瀏覽代碼

Few UI changes (#8299)

Co-authored-by: arkon <[email protected]>
Dexroneum 2 年之前
父節點
當前提交
26b46cace0

+ 2 - 2
app/src/main/java/eu/kanade/presentation/browse/ExtensionFilterScreen.kt

@@ -11,7 +11,7 @@ import androidx.compose.ui.platform.LocalContext
 import androidx.compose.ui.res.stringResource
 import eu.kanade.presentation.components.AppBar
 import eu.kanade.presentation.components.EmptyScreen
-import eu.kanade.presentation.components.LazyColumn
+import eu.kanade.presentation.components.FastScrollLazyColumn
 import eu.kanade.presentation.components.LoadingScreen
 import eu.kanade.presentation.components.PreferenceRow
 import eu.kanade.presentation.components.Scaffold
@@ -70,7 +70,7 @@ private fun SourceFilterContent(
     state: ExtensionFilterState,
     onClickLang: (String) -> Unit,
 ) {
-    LazyColumn(
+    FastScrollLazyColumn(
         contentPadding = contentPadding,
     ) {
         items(

+ 2 - 2
app/src/main/java/eu/kanade/presentation/browse/MigrateMangaScreen.kt

@@ -10,9 +10,9 @@ import androidx.compose.ui.platform.LocalContext
 import eu.kanade.domain.manga.model.Manga
 import eu.kanade.presentation.components.AppBar
 import eu.kanade.presentation.components.EmptyScreen
+import eu.kanade.presentation.components.FastScrollLazyColumn
 import eu.kanade.presentation.components.LoadingScreen
 import eu.kanade.presentation.components.Scaffold
-import eu.kanade.presentation.components.ScrollbarLazyColumn
 import eu.kanade.presentation.manga.components.BaseMangaListItem
 import eu.kanade.tachiyomi.R
 import eu.kanade.tachiyomi.ui.browse.migration.manga.MigrateMangaPresenter
@@ -72,7 +72,7 @@ private fun MigrateMangaContent(
     onClickItem: (Manga) -> Unit,
     onClickCover: (Manga) -> Unit,
 ) {
-    ScrollbarLazyColumn(
+    FastScrollLazyColumn(
         contentPadding = contentPadding,
     ) {
         items(state.items) { manga ->

+ 8 - 10
app/src/main/java/eu/kanade/presentation/browse/SourcesFilterScreen.kt

@@ -14,10 +14,10 @@ import eu.kanade.domain.source.model.Source
 import eu.kanade.presentation.browse.components.BaseSourceItem
 import eu.kanade.presentation.components.AppBar
 import eu.kanade.presentation.components.EmptyScreen
+import eu.kanade.presentation.components.FastScrollLazyColumn
 import eu.kanade.presentation.components.LoadingScreen
 import eu.kanade.presentation.components.PreferenceRow
 import eu.kanade.presentation.components.Scaffold
-import eu.kanade.presentation.components.ScrollbarLazyColumn
 import eu.kanade.tachiyomi.R
 import eu.kanade.tachiyomi.ui.browse.source.FilterUiModel
 import eu.kanade.tachiyomi.ui.browse.source.SourcesFilterPresenter
@@ -76,7 +76,7 @@ private fun SourcesFilterContent(
     onClickLang: (String) -> Unit,
     onClickSource: (Source) -> Unit,
 ) {
-    ScrollbarLazyColumn(
+    FastScrollLazyColumn(
         contentPadding = contentPadding,
     ) {
         items(
@@ -95,14 +95,12 @@ private fun SourcesFilterContent(
             },
         ) { model ->
             when (model) {
-                is FilterUiModel.Header -> {
-                    SourcesFilterHeader(
-                        modifier = Modifier.animateItemPlacement(),
-                        language = model.language,
-                        enabled = model.enabled,
-                        onClickItem = onClickLang,
-                    )
-                }
+                is FilterUiModel.Header -> SourcesFilterHeader(
+                    modifier = Modifier.animateItemPlacement(),
+                    language = model.language,
+                    enabled = model.enabled,
+                    onClickItem = onClickLang,
+                )
                 is FilterUiModel.Item -> SourcesFilterItem(
                     modifier = Modifier.animateItemPlacement(),
                     source = model.source,

+ 2 - 3
app/src/main/java/eu/kanade/presentation/history/components/HistoryContent.kt

@@ -7,10 +7,9 @@ import androidx.compose.runtime.remember
 import androidx.compose.ui.Modifier
 import eu.kanade.domain.history.model.HistoryWithRelations
 import eu.kanade.domain.ui.UiPreferences
+import eu.kanade.presentation.components.FastScrollLazyColumn
 import eu.kanade.presentation.components.RelativeDateHeader
-import eu.kanade.presentation.components.ScrollbarLazyColumn
 import eu.kanade.presentation.history.HistoryUiModel
-import eu.kanade.presentation.util.plus
 import uy.kohesive.injekt.Injekt
 import uy.kohesive.injekt.api.get
 import java.text.DateFormat
@@ -27,7 +26,7 @@ fun HistoryContent(
     val relativeTime: Int = remember { preferences.relativeTime().get() }
     val dateFormat: DateFormat = remember { UiPreferences.dateFormat(preferences.dateFormat().get()) }
 
-    ScrollbarLazyColumn(
+    FastScrollLazyColumn(
         contentPadding = contentPadding,
     ) {
         items(

+ 19 - 33
app/src/main/java/eu/kanade/presentation/updates/UpdatesScreen.kt

@@ -2,11 +2,8 @@ package eu.kanade.presentation.updates
 
 import androidx.activity.compose.BackHandler
 import androidx.compose.foundation.layout.PaddingValues
-import androidx.compose.foundation.layout.calculateEndPadding
-import androidx.compose.foundation.layout.fillMaxHeight
 import androidx.compose.foundation.layout.fillMaxWidth
 import androidx.compose.foundation.layout.padding
-import androidx.compose.foundation.lazy.rememberLazyListState
 import androidx.compose.material.icons.Icons
 import androidx.compose.material.icons.outlined.FlipToBack
 import androidx.compose.material.icons.outlined.Refresh
@@ -23,17 +20,15 @@ import androidx.compose.runtime.rememberCoroutineScope
 import androidx.compose.runtime.setValue
 import androidx.compose.ui.Modifier
 import androidx.compose.ui.platform.LocalContext
-import androidx.compose.ui.platform.LocalLayoutDirection
 import androidx.compose.ui.res.stringResource
 import eu.kanade.presentation.components.AppBar
 import eu.kanade.presentation.components.ChapterDownloadAction
 import eu.kanade.presentation.components.EmptyScreen
-import eu.kanade.presentation.components.LazyColumn
+import eu.kanade.presentation.components.FastScrollLazyColumn
 import eu.kanade.presentation.components.LoadingScreen
 import eu.kanade.presentation.components.MangaBottomActionMenu
 import eu.kanade.presentation.components.Scaffold
 import eu.kanade.presentation.components.SwipeRefresh
-import eu.kanade.presentation.components.VerticalFastScroller
 import eu.kanade.tachiyomi.R
 import eu.kanade.tachiyomi.data.download.model.Download
 import eu.kanade.tachiyomi.data.library.LibraryUpdateService
@@ -124,7 +119,6 @@ private fun UpdateScreenContent(
     onClickCover: (UpdatesItem) -> Unit,
 ) {
     val context = LocalContext.current
-    val updatesListState = rememberLazyListState()
     val scope = rememberCoroutineScope()
     var isRefreshing by remember { mutableStateOf(false) }
 
@@ -143,34 +137,26 @@ private fun UpdateScreenContent(
         enabled = presenter.selectionMode.not(),
         indicatorPadding = contentPadding,
     ) {
-        VerticalFastScroller(
-            listState = updatesListState,
-            topContentPadding = contentPadding.calculateTopPadding(),
-            endContentPadding = contentPadding.calculateEndPadding(LocalLayoutDirection.current),
+        FastScrollLazyColumn(
+            contentPadding = contentPadding,
         ) {
-            LazyColumn(
-                modifier = Modifier.fillMaxHeight(),
-                state = updatesListState,
-                contentPadding = contentPadding,
-            ) {
-                if (presenter.lastUpdated > 0L) {
-                    updatesLastUpdatedItem(presenter.lastUpdated)
-                }
-
-                updatesUiItems(
-                    uiModels = presenter.uiModels,
-                    selectionMode = presenter.selectionMode,
-                    onUpdateSelected = presenter::toggleSelection,
-                    onClickCover = onClickCover,
-                    onClickUpdate = {
-                        val intent = ReaderActivity.newIntent(context, it.update.mangaId, it.update.chapterId)
-                        context.startActivity(intent)
-                    },
-                    onDownloadChapter = presenter::downloadChapters,
-                    relativeTime = presenter.relativeTime,
-                    dateFormat = presenter.dateFormat,
-                )
+            if (presenter.lastUpdated > 0L) {
+                updatesLastUpdatedItem(presenter.lastUpdated)
             }
+            
+            updatesUiItems(
+                uiModels = presenter.uiModels,
+                selectionMode = presenter.selectionMode,
+                onUpdateSelected = presenter::toggleSelection,
+                onClickCover = onClickCover,
+                onClickUpdate = {
+                    val intent = ReaderActivity.newIntent(context, it.update.mangaId, it.update.chapterId)
+                    context.startActivity(intent)
+                },
+                onDownloadChapter = presenter::downloadChapters,
+                relativeTime = presenter.relativeTime,
+                dateFormat = presenter.dateFormat,
+            )
         }
     }