From 032aa64195bf821d0fc25d5c7d2f36ba39d3de68 Mon Sep 17 00:00:00 2001 From: arkon Date: Thu, 21 Apr 2022 22:58:28 -0400 Subject: [PATCH] Lift Compose theme to abstract controller --- .../presentation/history/HistoryScreen.kt | 57 ++++++++----------- .../ui/base/controller/ComposeController.kt | 5 +- 2 files changed, 29 insertions(+), 33 deletions(-) diff --git a/app/src/main/java/eu/kanade/presentation/history/HistoryScreen.kt b/app/src/main/java/eu/kanade/presentation/history/HistoryScreen.kt index 4c130588c..02bafed72 100644 --- a/app/src/main/java/eu/kanade/presentation/history/HistoryScreen.kt +++ b/app/src/main/java/eu/kanade/presentation/history/HistoryScreen.kt @@ -46,7 +46,6 @@ import eu.kanade.domain.history.model.HistoryWithRelations import eu.kanade.presentation.components.EmptyScreen import eu.kanade.presentation.components.MangaCover import eu.kanade.presentation.components.MangaCoverAspect -import eu.kanade.presentation.theme.TachiyomiTheme import eu.kanade.presentation.util.horizontalPadding import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.data.preference.PreferencesHelper @@ -61,12 +60,6 @@ import java.text.DecimalFormat import java.text.DecimalFormatSymbols import java.util.Date -val chapterFormatter = DecimalFormat( - "#.###", - DecimalFormatSymbols() - .apply { decimalSeparator = '.' }, -) - @Composable fun HistoryScreen( composeView: ComposeView, @@ -76,27 +69,25 @@ fun HistoryScreen( onClickDelete: (HistoryWithRelations, Boolean) -> Unit, ) { val nestedScrollInterop = rememberNestedScrollInteropConnection(composeView) - TachiyomiTheme { - val state by presenter.state.collectAsState() - val history = state.list?.collectAsLazyPagingItems() - when { - history == null -> { - CircularProgressIndicator() - } - history.itemCount == 0 -> { - EmptyScreen( - textResource = R.string.information_no_recent_manga - ) - } - else -> { - HistoryContent( - nestedScroll = nestedScrollInterop, - history = history, - onClickItem = onClickItem, - onClickResume = onClickResume, - onClickDelete = onClickDelete, - ) - } + val state by presenter.state.collectAsState() + val history = state.list?.collectAsLazyPagingItems() + when { + history == null -> { + CircularProgressIndicator() + } + history.itemCount == 0 -> { + EmptyScreen( + textResource = R.string.information_no_recent_manga + ) + } + else -> { + HistoryContent( + nestedScroll = nestedScrollInterop, + history = history, + onClickItem = onClickItem, + onClickResume = onClickResume, + onClickDelete = onClickDelete, + ) } } } @@ -146,10 +137,7 @@ fun HistoryContent( } } item { - Spacer( - modifier = Modifier - .navigationBarsPadding() - ) + Spacer(Modifier.navigationBarsPadding()) } } @@ -302,3 +290,8 @@ fun RemoveHistoryDialog( }, ) } + +private val chapterFormatter = DecimalFormat( + "#.###", + DecimalFormatSymbols().apply { decimalSeparator = '.' }, +) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/base/controller/ComposeController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/base/controller/ComposeController.kt index 8f1848b27..24c6719a6 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/base/controller/ComposeController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/base/controller/ComposeController.kt @@ -3,6 +3,7 @@ package eu.kanade.tachiyomi.ui.base.controller import android.view.LayoutInflater import android.view.View import androidx.compose.runtime.Composable +import eu.kanade.presentation.theme.TachiyomiTheme import eu.kanade.tachiyomi.databinding.ComposeControllerBinding import nucleus.presenter.Presenter @@ -15,7 +16,9 @@ abstract class ComposeController

> : NucleusController