mirror of
				https://github.com/mihonapp/mihon.git
				synced 2025-10-30 22:07:57 +01:00 
			
		
		
		
	Move more components to presentation-core module
This commit is contained in:
		| @@ -23,7 +23,6 @@ import eu.kanade.presentation.browse.components.BrowseSourceList | ||||
| import eu.kanade.presentation.components.AppBar | ||||
| import eu.kanade.presentation.components.EmptyScreen | ||||
| import eu.kanade.presentation.components.EmptyScreenAction | ||||
| import eu.kanade.presentation.components.LoadingScreen | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.source.LocalSource | ||||
| import eu.kanade.tachiyomi.source.Source | ||||
| @@ -31,6 +30,7 @@ import eu.kanade.tachiyomi.source.SourceManager | ||||
| import kotlinx.coroutines.flow.StateFlow | ||||
| import tachiyomi.domain.library.model.LibraryDisplayMode | ||||
| import tachiyomi.domain.manga.model.Manga | ||||
| import tachiyomi.presentation.core.components.LoadingScreen | ||||
| import tachiyomi.presentation.core.components.material.Scaffold | ||||
|  | ||||
| @Composable | ||||
|   | ||||
| @@ -52,7 +52,6 @@ import eu.kanade.presentation.components.ScrollbarLazyColumn | ||||
| import eu.kanade.presentation.components.WarningBanner | ||||
| import eu.kanade.presentation.more.settings.widget.TextPreferenceWidget | ||||
| import eu.kanade.presentation.more.settings.widget.TrailingWidgetBuffer | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.extension.model.Extension | ||||
| import eu.kanade.tachiyomi.source.ConfigurableSource | ||||
| @@ -61,6 +60,7 @@ import eu.kanade.tachiyomi.util.system.LocaleHelper | ||||
| import tachiyomi.presentation.core.components.material.DIVIDER_ALPHA | ||||
| import tachiyomi.presentation.core.components.material.Divider | ||||
| import tachiyomi.presentation.core.components.material.Scaffold | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
|  | ||||
| @Composable | ||||
| fun ExtensionDetailsScreen( | ||||
|   | ||||
| @@ -39,20 +39,20 @@ import eu.kanade.presentation.browse.components.BaseBrowseItem | ||||
| import eu.kanade.presentation.browse.components.ExtensionIcon | ||||
| import eu.kanade.presentation.components.EmptyScreen | ||||
| import eu.kanade.presentation.components.FastScrollLazyColumn | ||||
| import eu.kanade.presentation.components.LoadingScreen | ||||
| import eu.kanade.presentation.manga.components.DotSeparatorNoSpaceText | ||||
| import eu.kanade.presentation.theme.header | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.presentation.util.plus | ||||
| import eu.kanade.presentation.util.secondaryItemAlpha | ||||
| import eu.kanade.presentation.util.topSmallPaddingValues | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.extension.model.Extension | ||||
| import eu.kanade.tachiyomi.extension.model.InstallStep | ||||
| import eu.kanade.tachiyomi.ui.browse.extension.ExtensionUiModel | ||||
| import eu.kanade.tachiyomi.ui.browse.extension.ExtensionsState | ||||
| import eu.kanade.tachiyomi.util.system.LocaleHelper | ||||
| import tachiyomi.presentation.core.components.LoadingScreen | ||||
| import tachiyomi.presentation.core.components.material.PullRefresh | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
| import tachiyomi.presentation.core.components.material.topSmallPaddingValues | ||||
|  | ||||
| @Composable | ||||
| fun ExtensionScreen( | ||||
|   | ||||
| @@ -14,7 +14,6 @@ import eu.kanade.presentation.browse.components.GlobalSearchLoadingResultItem | ||||
| import eu.kanade.presentation.browse.components.GlobalSearchResultItem | ||||
| import eu.kanade.presentation.browse.components.GlobalSearchToolbar | ||||
| import eu.kanade.presentation.components.LazyColumn | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.source.CatalogueSource | ||||
| import eu.kanade.tachiyomi.ui.browse.source.globalsearch.GlobalSearchState | ||||
| @@ -22,6 +21,7 @@ import eu.kanade.tachiyomi.ui.browse.source.globalsearch.SearchItemResult | ||||
| import eu.kanade.tachiyomi.util.system.LocaleHelper | ||||
| import tachiyomi.domain.manga.model.Manga | ||||
| import tachiyomi.presentation.core.components.material.Scaffold | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
|  | ||||
| @Composable | ||||
| fun GlobalSearchScreen( | ||||
|   | ||||
| @@ -26,20 +26,20 @@ import eu.kanade.domain.source.interactor.SetMigrateSorting | ||||
| import eu.kanade.presentation.browse.components.BaseSourceItem | ||||
| import eu.kanade.presentation.browse.components.SourceIcon | ||||
| import eu.kanade.presentation.components.EmptyScreen | ||||
| import eu.kanade.presentation.components.LoadingScreen | ||||
| import eu.kanade.presentation.components.ScrollbarLazyColumn | ||||
| import eu.kanade.presentation.components.Scroller.STICKY_HEADER_KEY_PREFIX | ||||
| import eu.kanade.presentation.theme.header | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.presentation.util.plus | ||||
| import eu.kanade.presentation.util.secondaryItemAlpha | ||||
| import eu.kanade.presentation.util.topSmallPaddingValues | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.ui.browse.migration.sources.MigrateSourceState | ||||
| import eu.kanade.tachiyomi.util.system.copyToClipboard | ||||
| import tachiyomi.domain.source.model.Source | ||||
| import tachiyomi.presentation.core.components.Badge | ||||
| import tachiyomi.presentation.core.components.BadgeGroup | ||||
| import tachiyomi.presentation.core.components.LoadingScreen | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
| import tachiyomi.presentation.core.components.material.topSmallPaddingValues | ||||
|  | ||||
| @Composable | ||||
| fun MigrateSourceScreen( | ||||
|   | ||||
| @@ -23,12 +23,9 @@ import androidx.compose.ui.res.stringResource | ||||
| import androidx.compose.ui.unit.dp | ||||
| import eu.kanade.presentation.browse.components.BaseSourceItem | ||||
| import eu.kanade.presentation.components.EmptyScreen | ||||
| import eu.kanade.presentation.components.LoadingScreen | ||||
| import eu.kanade.presentation.components.ScrollbarLazyColumn | ||||
| import eu.kanade.presentation.theme.header | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.presentation.util.plus | ||||
| import eu.kanade.presentation.util.topSmallPaddingValues | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.source.LocalSource | ||||
| import eu.kanade.tachiyomi.ui.browse.source.SourcesState | ||||
| @@ -36,6 +33,9 @@ import eu.kanade.tachiyomi.ui.browse.source.browse.BrowseSourceScreenModel.Listi | ||||
| import eu.kanade.tachiyomi.util.system.LocaleHelper | ||||
| import tachiyomi.domain.source.model.Pin | ||||
| import tachiyomi.domain.source.model.Source | ||||
| import tachiyomi.presentation.core.components.LoadingScreen | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
| import tachiyomi.presentation.core.components.material.topSmallPaddingValues | ||||
|  | ||||
| @Composable | ||||
| fun SourcesScreen( | ||||
|   | ||||
| @@ -8,7 +8,7 @@ import androidx.compose.material3.MaterialTheme | ||||
| import androidx.compose.runtime.Composable | ||||
| import androidx.compose.ui.Alignment | ||||
| import androidx.compose.ui.Modifier | ||||
| import eu.kanade.presentation.util.padding | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
|  | ||||
| @Composable | ||||
| fun BaseBrowseItem( | ||||
|   | ||||
| @@ -9,10 +9,10 @@ import androidx.compose.runtime.Composable | ||||
| import androidx.compose.ui.Modifier | ||||
| import androidx.compose.ui.platform.LocalContext | ||||
| import androidx.compose.ui.text.style.TextOverflow | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.presentation.util.secondaryItemAlpha | ||||
| import eu.kanade.tachiyomi.util.system.LocaleHelper | ||||
| import tachiyomi.domain.source.model.Source | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
|  | ||||
| @Composable | ||||
| fun BaseSourceItem( | ||||
|   | ||||
| @@ -8,9 +8,9 @@ import androidx.compose.material3.MaterialTheme | ||||
| import androidx.compose.runtime.Composable | ||||
| import androidx.compose.runtime.State | ||||
| import androidx.compose.runtime.getValue | ||||
| import eu.kanade.presentation.util.padding | ||||
| import tachiyomi.domain.manga.model.Manga | ||||
| import tachiyomi.domain.manga.model.asMangaCover | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
|  | ||||
| @Composable | ||||
| fun GlobalSearchCardRow( | ||||
|   | ||||
| @@ -24,8 +24,8 @@ import androidx.compose.ui.Modifier | ||||
| import androidx.compose.ui.res.stringResource | ||||
| import androidx.compose.ui.text.style.TextAlign | ||||
| import androidx.compose.ui.unit.dp | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.tachiyomi.R | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
|  | ||||
| @Composable | ||||
| fun GlobalSearchResultItem( | ||||
|   | ||||
| @@ -11,13 +11,13 @@ import eu.kanade.presentation.category.components.CategoryContent | ||||
| import eu.kanade.presentation.category.components.CategoryFloatingActionButton | ||||
| import eu.kanade.presentation.components.AppBar | ||||
| import eu.kanade.presentation.components.EmptyScreen | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.presentation.util.plus | ||||
| import eu.kanade.presentation.util.topSmallPaddingValues | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.ui.category.CategoryScreenState | ||||
| import tachiyomi.domain.category.model.Category | ||||
| import tachiyomi.presentation.core.components.material.Scaffold | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
| import tachiyomi.presentation.core.components.material.topSmallPaddingValues | ||||
|  | ||||
| @Composable | ||||
| fun CategoryScreen( | ||||
|   | ||||
| @@ -8,8 +8,8 @@ import androidx.compose.material3.MaterialTheme | ||||
| import androidx.compose.runtime.Composable | ||||
| import androidx.compose.ui.Modifier | ||||
| import eu.kanade.presentation.components.LazyColumn | ||||
| import eu.kanade.presentation.util.padding | ||||
| import tachiyomi.domain.category.model.Category | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
|  | ||||
| @Composable | ||||
| fun CategoryContent( | ||||
|   | ||||
| @@ -20,9 +20,9 @@ import androidx.compose.runtime.Composable | ||||
| import androidx.compose.ui.Alignment | ||||
| import androidx.compose.ui.Modifier | ||||
| import androidx.compose.ui.res.stringResource | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.tachiyomi.R | ||||
| import tachiyomi.domain.category.model.Category | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
|  | ||||
| @Composable | ||||
| fun CategoryListItem( | ||||
|   | ||||
| @@ -23,9 +23,9 @@ import androidx.compose.ui.Modifier | ||||
| import androidx.compose.ui.res.stringResource | ||||
| import eu.kanade.core.prefs.CheckboxState | ||||
| import eu.kanade.presentation.category.visualName | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.tachiyomi.R | ||||
| import tachiyomi.domain.category.model.Category | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
|  | ||||
| @Composable | ||||
| fun ChangeCategoryDialog( | ||||
|   | ||||
| @@ -35,6 +35,7 @@ import androidx.compose.ui.unit.dp | ||||
| import eu.kanade.presentation.util.secondaryItemAlpha | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.data.download.model.Download | ||||
| import tachiyomi.presentation.core.components.material.IconButtonTokens | ||||
|  | ||||
| enum class ChapterDownloadAction { | ||||
|     START, | ||||
|   | ||||
| @@ -27,9 +27,9 @@ import androidx.compose.ui.text.style.TextAlign | ||||
| import androidx.compose.ui.unit.dp | ||||
| import eu.kanade.presentation.theme.TachiyomiTheme | ||||
| import eu.kanade.presentation.util.ThemePreviews | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.presentation.util.secondaryItemAlpha | ||||
| import eu.kanade.tachiyomi.R | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
| import kotlin.random.Random | ||||
|  | ||||
| @Composable | ||||
|   | ||||
| @@ -1,12 +0,0 @@ | ||||
| package eu.kanade.presentation.components | ||||
|  | ||||
| import androidx.compose.ui.unit.dp | ||||
|  | ||||
| /** | ||||
|  * Exposing some internal tokens. | ||||
|  * | ||||
|  * @see androidx.compose.material3.tokens.IconButtonTokens | ||||
|  */ | ||||
| object IconButtonTokens { | ||||
|     val StateLayerSize = 40.0.dp | ||||
| } | ||||
| @@ -28,9 +28,9 @@ import androidx.compose.ui.unit.dp | ||||
| import androidx.compose.ui.zIndex | ||||
| import eu.kanade.presentation.theme.TachiyomiTheme | ||||
| import eu.kanade.presentation.util.ThemePreviews | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.presentation.util.secondaryItemAlpha | ||||
| import tachiyomi.presentation.core.components.material.Scaffold | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
|  | ||||
| @Composable | ||||
| fun InfoScaffold( | ||||
|   | ||||
| @@ -6,7 +6,7 @@ import androidx.compose.material3.Text | ||||
| import androidx.compose.runtime.Composable | ||||
| import androidx.compose.ui.Modifier | ||||
| import androidx.compose.ui.text.font.FontWeight | ||||
| import eu.kanade.presentation.util.padding | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
|  | ||||
| @Composable | ||||
| fun ListGroupHeader( | ||||
|   | ||||
| @@ -1,18 +0,0 @@ | ||||
| package eu.kanade.presentation.components | ||||
|  | ||||
| import androidx.compose.foundation.layout.Box | ||||
| import androidx.compose.foundation.layout.fillMaxSize | ||||
| import androidx.compose.material3.CircularProgressIndicator | ||||
| import androidx.compose.runtime.Composable | ||||
| import androidx.compose.ui.Alignment | ||||
| import androidx.compose.ui.Modifier | ||||
|  | ||||
| @Composable | ||||
| fun LoadingScreen(modifier: Modifier = Modifier) { | ||||
|     Box( | ||||
|         modifier = modifier.fillMaxSize(), | ||||
|         contentAlignment = Alignment.Center, | ||||
|     ) { | ||||
|         CircularProgressIndicator() | ||||
|     } | ||||
| } | ||||
| @@ -1,48 +0,0 @@ | ||||
| package eu.kanade.presentation.components | ||||
|  | ||||
| import androidx.compose.foundation.layout.Row | ||||
| import androidx.compose.foundation.layout.RowScope | ||||
| import androidx.compose.foundation.layout.WindowInsets | ||||
| import androidx.compose.foundation.layout.fillMaxWidth | ||||
| import androidx.compose.foundation.layout.height | ||||
| import androidx.compose.foundation.layout.windowInsetsPadding | ||||
| import androidx.compose.foundation.selection.selectableGroup | ||||
| import androidx.compose.material3.MaterialTheme | ||||
| import androidx.compose.material3.NavigationBarDefaults | ||||
| import androidx.compose.material3.contentColorFor | ||||
| import androidx.compose.runtime.Composable | ||||
| import androidx.compose.ui.Modifier | ||||
| import androidx.compose.ui.graphics.Color | ||||
| import androidx.compose.ui.unit.Dp | ||||
| import androidx.compose.ui.unit.dp | ||||
|  | ||||
| /** | ||||
|  * M3 Navbar with no horizontal spacer | ||||
|  * | ||||
|  * @see [androidx.compose.material3.NavigationBar] | ||||
|  */ | ||||
| @Composable | ||||
| fun NavigationBar( | ||||
|     modifier: Modifier = Modifier, | ||||
|     containerColor: Color = NavigationBarDefaults.containerColor, | ||||
|     contentColor: Color = MaterialTheme.colorScheme.contentColorFor(containerColor), | ||||
|     tonalElevation: Dp = NavigationBarDefaults.Elevation, | ||||
|     windowInsets: WindowInsets = NavigationBarDefaults.windowInsets, | ||||
|     content: @Composable RowScope.() -> Unit, | ||||
| ) { | ||||
|     androidx.compose.material3.Surface( | ||||
|         color = containerColor, | ||||
|         contentColor = contentColor, | ||||
|         tonalElevation = tonalElevation, | ||||
|         modifier = modifier, | ||||
|     ) { | ||||
|         Row( | ||||
|             modifier = Modifier | ||||
|                 .fillMaxWidth() | ||||
|                 .windowInsetsPadding(windowInsets) | ||||
|                 .height(80.dp) | ||||
|                 .selectableGroup(), | ||||
|             content = content, | ||||
|         ) | ||||
|     } | ||||
| } | ||||
| @@ -1,61 +0,0 @@ | ||||
| package eu.kanade.presentation.components | ||||
|  | ||||
| import androidx.compose.foundation.layout.Arrangement | ||||
| import androidx.compose.foundation.layout.Column | ||||
| import androidx.compose.foundation.layout.ColumnScope | ||||
| import androidx.compose.foundation.layout.Spacer | ||||
| import androidx.compose.foundation.layout.WindowInsets | ||||
| import androidx.compose.foundation.layout.fillMaxHeight | ||||
| import androidx.compose.foundation.layout.height | ||||
| import androidx.compose.foundation.layout.padding | ||||
| import androidx.compose.foundation.layout.widthIn | ||||
| import androidx.compose.foundation.layout.windowInsetsPadding | ||||
| import androidx.compose.foundation.selection.selectableGroup | ||||
| import androidx.compose.material3.MaterialTheme | ||||
| import androidx.compose.material3.NavigationRailDefaults | ||||
| import androidx.compose.material3.contentColorFor | ||||
| import androidx.compose.runtime.Composable | ||||
| import androidx.compose.ui.Alignment | ||||
| import androidx.compose.ui.Modifier | ||||
| import androidx.compose.ui.graphics.Color | ||||
| import androidx.compose.ui.unit.dp | ||||
| import eu.kanade.presentation.util.padding | ||||
|  | ||||
| /** | ||||
|  * Center-aligned M3 Navigation rail | ||||
|  * | ||||
|  * @see [androidx.compose.material3.NavigationRail] | ||||
|  */ | ||||
| @Composable | ||||
| fun NavigationRail( | ||||
|     modifier: Modifier = Modifier, | ||||
|     containerColor: Color = NavigationRailDefaults.ContainerColor, | ||||
|     contentColor: Color = contentColorFor(containerColor), | ||||
|     header: @Composable (ColumnScope.() -> Unit)? = null, | ||||
|     windowInsets: WindowInsets = NavigationRailDefaults.windowInsets, | ||||
|     content: @Composable ColumnScope.() -> Unit, | ||||
| ) { | ||||
|     androidx.compose.material3.Surface( | ||||
|         color = containerColor, | ||||
|         contentColor = contentColor, | ||||
|         modifier = modifier, | ||||
|         tonalElevation = 3.dp, | ||||
|     ) { | ||||
|         Column( | ||||
|             Modifier | ||||
|                 .fillMaxHeight() | ||||
|                 .windowInsetsPadding(windowInsets) | ||||
|                 .widthIn(min = 80.dp) | ||||
|                 .padding(vertical = MaterialTheme.padding.tiny) | ||||
|                 .selectableGroup(), | ||||
|             horizontalAlignment = Alignment.CenterHorizontally, | ||||
|             verticalArrangement = Arrangement.spacedBy(MaterialTheme.padding.tiny, alignment = Alignment.CenterVertically), | ||||
|         ) { | ||||
|             if (header != null) { | ||||
|                 header() | ||||
|                 Spacer(Modifier.height(MaterialTheme.padding.small)) | ||||
|             } | ||||
|             content() | ||||
|         } | ||||
|     } | ||||
| } | ||||
| @@ -1,46 +0,0 @@ | ||||
| package eu.kanade.presentation.components | ||||
|  | ||||
| import androidx.compose.foundation.layout.Box | ||||
| import androidx.compose.foundation.layout.BoxScope | ||||
| import androidx.compose.foundation.layout.BoxWithConstraints | ||||
| import androidx.compose.foundation.layout.WindowInsets | ||||
| import androidx.compose.foundation.layout.asPaddingValues | ||||
| import androidx.compose.foundation.layout.calculateEndPadding | ||||
| import androidx.compose.foundation.layout.calculateStartPadding | ||||
| import androidx.compose.foundation.layout.fillMaxSize | ||||
| import androidx.compose.foundation.layout.width | ||||
| import androidx.compose.runtime.Composable | ||||
| import androidx.compose.ui.Alignment | ||||
| import androidx.compose.ui.Modifier | ||||
| import androidx.compose.ui.platform.LocalLayoutDirection | ||||
| import androidx.compose.ui.unit.dp | ||||
|  | ||||
| @Composable | ||||
| fun TwoPanelBox( | ||||
|     modifier: Modifier = Modifier, | ||||
|     contentWindowInsets: WindowInsets = WindowInsets(0), | ||||
|     startContent: @Composable BoxScope.() -> Unit, | ||||
|     endContent: @Composable BoxScope.() -> Unit, | ||||
| ) { | ||||
|     val direction = LocalLayoutDirection.current | ||||
|     val padding = contentWindowInsets.asPaddingValues() | ||||
|     val startPadding = padding.calculateStartPadding(direction) | ||||
|     val endPadding = padding.calculateEndPadding(direction) | ||||
|     BoxWithConstraints(modifier = modifier.fillMaxSize()) { | ||||
|         val width = maxWidth - startPadding - endPadding | ||||
|         val firstWidth = (width / 2).coerceAtMost(450.dp) | ||||
|         val secondWidth = width - firstWidth | ||||
|         Box( | ||||
|             modifier = Modifier | ||||
|                 .align(Alignment.TopStart) | ||||
|                 .width(firstWidth + startPadding), | ||||
|             content = startContent, | ||||
|         ) | ||||
|         Box( | ||||
|             modifier = Modifier | ||||
|                 .align(Alignment.TopEnd) | ||||
|                 .width(secondWidth + endPadding), | ||||
|             content = endContent, | ||||
|         ) | ||||
|     } | ||||
| } | ||||
| @@ -27,10 +27,10 @@ import androidx.compose.ui.Modifier | ||||
| import androidx.compose.ui.draw.alpha | ||||
| import androidx.compose.ui.unit.DpSize | ||||
| import androidx.compose.ui.unit.dp | ||||
| import eu.kanade.presentation.util.padding | ||||
| import kotlinx.coroutines.flow.collectLatest | ||||
| import kotlinx.coroutines.flow.distinctUntilChanged | ||||
| import kotlinx.coroutines.flow.map | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
| import java.text.DateFormatSymbols | ||||
| import java.time.LocalDate | ||||
| import kotlin.math.absoluteValue | ||||
|   | ||||
| @@ -17,10 +17,10 @@ import androidx.compose.ui.res.stringResource | ||||
| import eu.kanade.presentation.components.InfoScaffold | ||||
| import eu.kanade.presentation.theme.TachiyomiTheme | ||||
| import eu.kanade.presentation.util.ThemePreviews | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.util.CrashLogUtil | ||||
| import kotlinx.coroutines.launch | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
|  | ||||
| @Composable | ||||
| fun CrashScreen( | ||||
|   | ||||
| @@ -12,13 +12,13 @@ import androidx.compose.ui.Modifier | ||||
| import androidx.compose.ui.res.stringResource | ||||
| import eu.kanade.presentation.components.AppBarTitle | ||||
| import eu.kanade.presentation.components.EmptyScreen | ||||
| import eu.kanade.presentation.components.LoadingScreen | ||||
| import eu.kanade.presentation.components.SearchToolbar | ||||
| import eu.kanade.presentation.history.components.HistoryContent | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.ui.history.HistoryScreenModel | ||||
| import eu.kanade.tachiyomi.ui.history.HistoryState | ||||
| import tachiyomi.domain.history.model.HistoryWithRelations | ||||
| import tachiyomi.presentation.core.components.LoadingScreen | ||||
| import tachiyomi.presentation.core.components.material.Scaffold | ||||
| import java.util.Date | ||||
|  | ||||
|   | ||||
| @@ -21,10 +21,10 @@ import androidx.compose.ui.text.font.FontWeight | ||||
| import androidx.compose.ui.text.style.TextOverflow | ||||
| import androidx.compose.ui.unit.dp | ||||
| import eu.kanade.presentation.components.MangaCover | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.util.lang.toTimestampString | ||||
| import tachiyomi.domain.history.model.HistoryWithRelations | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
| import java.text.DecimalFormat | ||||
| import java.text.DecimalFormatSymbols | ||||
|  | ||||
|   | ||||
| @@ -51,7 +51,6 @@ import eu.kanade.domain.manga.model.chaptersFiltered | ||||
| import eu.kanade.presentation.components.ChapterDownloadAction | ||||
| import eu.kanade.presentation.components.LazyColumn | ||||
| import eu.kanade.presentation.components.MangaBottomActionMenu | ||||
| import eu.kanade.presentation.components.TwoPanelBox | ||||
| import eu.kanade.presentation.components.VerticalFastScroller | ||||
| import eu.kanade.presentation.manga.components.ChapterHeader | ||||
| import eu.kanade.presentation.manga.components.ExpandableMangaDescription | ||||
| @@ -72,6 +71,7 @@ import eu.kanade.tachiyomi.util.lang.toRelativeString | ||||
| import eu.kanade.tachiyomi.util.system.copyToClipboard | ||||
| import tachiyomi.domain.chapter.model.Chapter | ||||
| import tachiyomi.domain.manga.model.Manga | ||||
| import tachiyomi.presentation.core.components.TwoPanelBox | ||||
| import tachiyomi.presentation.core.components.material.ExtendedFloatingActionButton | ||||
| import tachiyomi.presentation.core.components.material.PullRefresh | ||||
| import tachiyomi.presentation.core.components.material.Scaffold | ||||
|   | ||||
| @@ -35,10 +35,10 @@ import eu.kanade.presentation.components.WheelTextPicker | ||||
| import eu.kanade.presentation.util.isScrolledToEnd | ||||
| import eu.kanade.presentation.util.isScrolledToStart | ||||
| import eu.kanade.presentation.util.minimumTouchTargetSize | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.tachiyomi.R | ||||
| import tachiyomi.presentation.core.components.material.AlertDialogContent | ||||
| import tachiyomi.presentation.core.components.material.Divider | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
| import java.time.LocalDate | ||||
| import java.time.format.TextStyle | ||||
|  | ||||
|   | ||||
| @@ -57,17 +57,17 @@ import androidx.compose.ui.text.style.TextOverflow | ||||
| import androidx.compose.ui.text.toLowerCase | ||||
| import androidx.compose.ui.unit.dp | ||||
| import eu.kanade.presentation.components.EmptyScreen | ||||
| import eu.kanade.presentation.components.LoadingScreen | ||||
| import eu.kanade.presentation.components.MangaCover | ||||
| import eu.kanade.presentation.components.ScrollbarLazyColumn | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.presentation.util.plus | ||||
| import eu.kanade.presentation.util.runOnEnterKeyPressed | ||||
| import eu.kanade.presentation.util.secondaryItemAlpha | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.data.track.model.TrackSearch | ||||
| import tachiyomi.presentation.core.components.LoadingScreen | ||||
| import tachiyomi.presentation.core.components.material.Divider | ||||
| import tachiyomi.presentation.core.components.material.Scaffold | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
|  | ||||
| @Composable | ||||
| fun TrackServiceSearch( | ||||
|   | ||||
| @@ -15,8 +15,8 @@ import androidx.compose.ui.Modifier | ||||
| import androidx.compose.ui.text.style.TextOverflow | ||||
| import androidx.compose.ui.unit.dp | ||||
| import eu.kanade.presentation.components.MangaCover | ||||
| import eu.kanade.presentation.util.padding | ||||
| import tachiyomi.domain.manga.model.Manga | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
|  | ||||
| @Composable | ||||
| fun BaseMangaListItem( | ||||
|   | ||||
| @@ -29,11 +29,11 @@ import androidx.compose.ui.unit.dp | ||||
| import androidx.compose.ui.unit.sp | ||||
| import eu.kanade.presentation.components.ChapterDownloadAction | ||||
| import eu.kanade.presentation.components.ChapterDownloadIndicator | ||||
| import eu.kanade.presentation.util.ReadItemAlpha | ||||
| import eu.kanade.presentation.util.SecondaryItemAlpha | ||||
| import eu.kanade.presentation.util.selectedBackground | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.data.download.model.Download | ||||
| import tachiyomi.presentation.core.components.material.ReadItemAlpha | ||||
| import tachiyomi.presentation.core.components.material.SecondaryItemAlpha | ||||
|  | ||||
| @Composable | ||||
| fun MangaChapterListItem( | ||||
|   | ||||
| @@ -77,12 +77,12 @@ import eu.kanade.presentation.components.DropdownMenu | ||||
| import eu.kanade.presentation.components.MangaCover | ||||
| import eu.kanade.presentation.components.TextButton | ||||
| import eu.kanade.presentation.util.clickableNoIndication | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.presentation.util.secondaryItemAlpha | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.source.model.SManga | ||||
| import eu.kanade.tachiyomi.util.system.copyToClipboard | ||||
| import tachiyomi.domain.manga.model.Manga | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
| import kotlin.math.roundToInt | ||||
|  | ||||
| private val whitespaceLineRegex = Regex("[\\r\\n]{2,}", setOf(RegexOption.MULTILINE)) | ||||
|   | ||||
| @@ -22,8 +22,8 @@ import com.halilibo.richtext.ui.string.RichTextStringStyle | ||||
| import eu.kanade.presentation.components.InfoScaffold | ||||
| import eu.kanade.presentation.theme.TachiyomiTheme | ||||
| import eu.kanade.presentation.util.ThemePreviews | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.tachiyomi.R | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
|  | ||||
| @Composable | ||||
| fun NewUpdateScreen( | ||||
|   | ||||
| @@ -40,7 +40,6 @@ import eu.kanade.presentation.components.AppBar | ||||
| import eu.kanade.presentation.components.AppBarActions | ||||
| import eu.kanade.presentation.components.EmptyScreen | ||||
| import eu.kanade.presentation.components.FastScrollLazyColumn | ||||
| import eu.kanade.presentation.components.LoadingScreen | ||||
| import eu.kanade.presentation.util.selectedBackground | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.util.system.toast | ||||
| @@ -52,6 +51,7 @@ import tachiyomi.core.util.lang.withNonCancellableContext | ||||
| import tachiyomi.data.Database | ||||
| import tachiyomi.domain.source.model.Source | ||||
| import tachiyomi.domain.source.model.SourceWithCount | ||||
| import tachiyomi.presentation.core.components.LoadingScreen | ||||
| import tachiyomi.presentation.core.components.material.Divider | ||||
| import tachiyomi.presentation.core.components.material.Scaffold | ||||
| import uy.kohesive.injekt.Injekt | ||||
|   | ||||
| @@ -43,7 +43,6 @@ import androidx.compose.ui.text.style.TextAlign | ||||
| import androidx.compose.ui.unit.dp | ||||
| import eu.kanade.domain.track.service.TrackPreferences | ||||
| import eu.kanade.presentation.more.settings.Preference | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.data.track.EnhancedTrackService | ||||
| import eu.kanade.tachiyomi.data.track.TrackManager | ||||
| @@ -57,6 +56,7 @@ import eu.kanade.tachiyomi.util.system.openInBrowser | ||||
| import eu.kanade.tachiyomi.util.system.toast | ||||
| import tachiyomi.core.util.lang.launchIO | ||||
| import tachiyomi.core.util.lang.withUIContext | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
| import uy.kohesive.injekt.Injekt | ||||
| import uy.kohesive.injekt.api.get | ||||
|  | ||||
|   | ||||
| @@ -42,12 +42,12 @@ import eu.kanade.domain.ui.model.AppTheme | ||||
| import eu.kanade.presentation.components.MangaCover | ||||
| import eu.kanade.presentation.theme.TachiyomiTheme | ||||
| import eu.kanade.presentation.util.ThemePreviews | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.presentation.util.secondaryItemAlpha | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.util.system.DeviceUtil | ||||
| import eu.kanade.tachiyomi.util.system.isDynamicColorAvailable | ||||
| import tachiyomi.presentation.core.components.material.DIVIDER_ALPHA | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
|  | ||||
| @Composable | ||||
| internal fun AppThemePreferenceWidget( | ||||
|   | ||||
| @@ -14,9 +14,9 @@ import androidx.compose.ui.Modifier | ||||
| import androidx.compose.ui.res.stringResource | ||||
| import eu.kanade.presentation.theme.TachiyomiTheme | ||||
| import eu.kanade.presentation.util.ThemePreviews | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.presentation.util.secondaryItemAlpha | ||||
| import eu.kanade.tachiyomi.R | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
|  | ||||
| @Composable | ||||
| internal fun InfoWidget(text: String) { | ||||
|   | ||||
| @@ -19,8 +19,8 @@ import eu.kanade.presentation.more.stats.components.StatsItem | ||||
| import eu.kanade.presentation.more.stats.components.StatsOverviewItem | ||||
| import eu.kanade.presentation.more.stats.components.StatsSection | ||||
| import eu.kanade.presentation.more.stats.data.StatsData | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.tachiyomi.R | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
| import java.util.Locale | ||||
| import kotlin.time.DurationUnit | ||||
| import kotlin.time.toDuration | ||||
|   | ||||
| @@ -14,8 +14,8 @@ import androidx.compose.ui.graphics.vector.rememberVectorPainter | ||||
| import androidx.compose.ui.text.TextStyle | ||||
| import androidx.compose.ui.text.font.FontWeight | ||||
| import androidx.compose.ui.text.style.TextAlign | ||||
| import eu.kanade.presentation.util.SecondaryItemAlpha | ||||
| import eu.kanade.presentation.util.padding | ||||
| import tachiyomi.presentation.core.components.material.SecondaryItemAlpha | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
|  | ||||
| @Composable | ||||
| fun RowScope.StatsOverviewItem( | ||||
|   | ||||
| @@ -10,7 +10,7 @@ import androidx.compose.material3.Text | ||||
| import androidx.compose.runtime.Composable | ||||
| import androidx.compose.ui.Modifier | ||||
| import androidx.compose.ui.res.stringResource | ||||
| import eu.kanade.presentation.util.padding | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
|  | ||||
| @Composable | ||||
| fun StatsSection( | ||||
|   | ||||
| @@ -27,7 +27,6 @@ import eu.kanade.presentation.components.AppBar | ||||
| import eu.kanade.presentation.components.ChapterDownloadAction | ||||
| import eu.kanade.presentation.components.EmptyScreen | ||||
| import eu.kanade.presentation.components.FastScrollLazyColumn | ||||
| import eu.kanade.presentation.components.LoadingScreen | ||||
| import eu.kanade.presentation.components.MangaBottomActionMenu | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.data.download.model.Download | ||||
| @@ -35,6 +34,7 @@ import eu.kanade.tachiyomi.ui.updates.UpdatesItem | ||||
| import eu.kanade.tachiyomi.ui.updates.UpdatesState | ||||
| import kotlinx.coroutines.delay | ||||
| import kotlinx.coroutines.launch | ||||
| import tachiyomi.presentation.core.components.LoadingScreen | ||||
| import tachiyomi.presentation.core.components.material.PullRefresh | ||||
| import tachiyomi.presentation.core.components.material.Scaffold | ||||
| import kotlin.time.Duration.Companion.seconds | ||||
|   | ||||
| @@ -38,13 +38,13 @@ import eu.kanade.presentation.components.ChapterDownloadIndicator | ||||
| import eu.kanade.presentation.components.ListGroupHeader | ||||
| import eu.kanade.presentation.components.MangaCover | ||||
| import eu.kanade.presentation.manga.components.DotSeparatorText | ||||
| import eu.kanade.presentation.util.ReadItemAlpha | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.presentation.util.selectedBackground | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.data.download.model.Download | ||||
| import eu.kanade.tachiyomi.ui.updates.UpdatesItem | ||||
| import tachiyomi.domain.updates.model.UpdatesWithRelations | ||||
| import tachiyomi.presentation.core.components.material.ReadItemAlpha | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
| import java.util.Date | ||||
| import kotlin.time.Duration.Companion.minutes | ||||
|  | ||||
|   | ||||
| @@ -1,26 +0,0 @@ | ||||
| package eu.kanade.presentation.util | ||||
|  | ||||
| import androidx.compose.foundation.layout.PaddingValues | ||||
| import androidx.compose.material3.MaterialTheme | ||||
| import androidx.compose.ui.unit.dp | ||||
|  | ||||
| val topSmallPaddingValues = PaddingValues(top = MaterialTheme.padding.small) | ||||
|  | ||||
| const val ReadItemAlpha = .38f | ||||
| const val SecondaryItemAlpha = .78f | ||||
|  | ||||
| class Padding { | ||||
|  | ||||
|     val extraLarge = 32.dp | ||||
|  | ||||
|     val large = 24.dp | ||||
|  | ||||
|     val medium = 16.dp | ||||
|  | ||||
|     val small = 8.dp | ||||
|  | ||||
|     val tiny = 4.dp | ||||
| } | ||||
|  | ||||
| val MaterialTheme.padding: Padding | ||||
|     get() = Padding() | ||||
| @@ -21,6 +21,7 @@ import androidx.compose.ui.platform.LocalViewConfiguration | ||||
| import androidx.compose.ui.platform.debugInspectorInfo | ||||
| import androidx.compose.ui.unit.Constraints | ||||
| import androidx.compose.ui.unit.DpSize | ||||
| import tachiyomi.presentation.core.components.material.SecondaryItemAlpha | ||||
| import kotlin.math.roundToInt | ||||
|  | ||||
| fun Modifier.selectedBackground(isSelected: Boolean): Modifier = composed { | ||||
|   | ||||
| @@ -10,10 +10,10 @@ import cafe.adriel.voyager.core.screen.Screen | ||||
| import cafe.adriel.voyager.navigator.LocalNavigator | ||||
| import cafe.adriel.voyager.navigator.currentOrThrow | ||||
| import eu.kanade.presentation.browse.ExtensionFilterScreen | ||||
| import eu.kanade.presentation.components.LoadingScreen | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.util.system.toast | ||||
| import kotlinx.coroutines.flow.collectLatest | ||||
| import tachiyomi.presentation.core.components.LoadingScreen | ||||
|  | ||||
| class ExtensionFilterScreen : Screen { | ||||
|  | ||||
|   | ||||
| @@ -11,8 +11,8 @@ import cafe.adriel.voyager.core.screen.Screen | ||||
| import cafe.adriel.voyager.navigator.LocalNavigator | ||||
| import cafe.adriel.voyager.navigator.currentOrThrow | ||||
| import eu.kanade.presentation.browse.ExtensionDetailsScreen | ||||
| import eu.kanade.presentation.components.LoadingScreen | ||||
| import kotlinx.coroutines.flow.collectLatest | ||||
| import tachiyomi.presentation.core.components.LoadingScreen | ||||
|  | ||||
| data class ExtensionDetailsScreen( | ||||
|     private val pkgName: String, | ||||
|   | ||||
| @@ -10,12 +10,12 @@ import cafe.adriel.voyager.core.screen.Screen | ||||
| import cafe.adriel.voyager.navigator.LocalNavigator | ||||
| import cafe.adriel.voyager.navigator.currentOrThrow | ||||
| import eu.kanade.presentation.browse.MigrateMangaScreen | ||||
| import eu.kanade.presentation.components.LoadingScreen | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.ui.browse.migration.search.MigrateSearchScreen | ||||
| import eu.kanade.tachiyomi.ui.manga.MangaScreen | ||||
| import eu.kanade.tachiyomi.util.system.toast | ||||
| import kotlinx.coroutines.flow.collectLatest | ||||
| import tachiyomi.presentation.core.components.LoadingScreen | ||||
|  | ||||
| data class MigrationMangaScreen( | ||||
|     private val sourceId: Long, | ||||
|   | ||||
| @@ -29,7 +29,6 @@ import eu.kanade.domain.chapter.interactor.SyncChaptersWithSource | ||||
| import eu.kanade.domain.manga.interactor.UpdateManga | ||||
| import eu.kanade.domain.manga.model.hasCustomCover | ||||
| import eu.kanade.domain.manga.model.toSManga | ||||
| import eu.kanade.presentation.components.LoadingScreen | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.data.cache.CoverCache | ||||
| import eu.kanade.tachiyomi.data.track.EnhancedTrackService | ||||
| @@ -52,6 +51,7 @@ import tachiyomi.domain.manga.model.Manga | ||||
| import tachiyomi.domain.manga.model.MangaUpdate | ||||
| import tachiyomi.domain.track.interactor.GetTracks | ||||
| import tachiyomi.domain.track.interactor.InsertTrack | ||||
| import tachiyomi.presentation.core.components.LoadingScreen | ||||
| import uy.kohesive.injekt.Injekt | ||||
| import uy.kohesive.injekt.api.get | ||||
| import java.util.Date | ||||
|   | ||||
| @@ -10,9 +10,9 @@ import cafe.adriel.voyager.core.screen.Screen | ||||
| import cafe.adriel.voyager.navigator.LocalNavigator | ||||
| import cafe.adriel.voyager.navigator.currentOrThrow | ||||
| import eu.kanade.presentation.browse.SourcesFilterScreen | ||||
| import eu.kanade.presentation.components.LoadingScreen | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.util.system.toast | ||||
| import tachiyomi.presentation.core.components.LoadingScreen | ||||
|  | ||||
| class SourcesFilterScreen : Screen { | ||||
|  | ||||
|   | ||||
| @@ -45,7 +45,6 @@ import eu.kanade.presentation.browse.components.RemoveMangaDialog | ||||
| import eu.kanade.presentation.components.ChangeCategoryDialog | ||||
| import eu.kanade.presentation.components.DuplicateMangaDialog | ||||
| import eu.kanade.presentation.util.AssistContentScreen | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.source.CatalogueSource | ||||
| import eu.kanade.tachiyomi.source.LocalSource | ||||
| @@ -62,6 +61,7 @@ import tachiyomi.core.Constants | ||||
| import tachiyomi.core.util.lang.launchIO | ||||
| import tachiyomi.presentation.core.components.material.Divider | ||||
| import tachiyomi.presentation.core.components.material.Scaffold | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
|  | ||||
| data class BrowseSourceScreen( | ||||
|     private val sourceId: Long, | ||||
|   | ||||
| @@ -14,9 +14,9 @@ import eu.kanade.presentation.category.CategoryScreen | ||||
| import eu.kanade.presentation.category.components.CategoryCreateDialog | ||||
| import eu.kanade.presentation.category.components.CategoryDeleteDialog | ||||
| import eu.kanade.presentation.category.components.CategoryRenameDialog | ||||
| import eu.kanade.presentation.components.LoadingScreen | ||||
| import eu.kanade.tachiyomi.util.system.toast | ||||
| import kotlinx.coroutines.flow.collectLatest | ||||
| import tachiyomi.presentation.core.components.LoadingScreen | ||||
|  | ||||
| class CategoryScreen : Screen { | ||||
|  | ||||
|   | ||||
| @@ -37,8 +37,6 @@ import cafe.adriel.voyager.navigator.tab.LocalTabNavigator | ||||
| import cafe.adriel.voyager.navigator.tab.TabNavigator | ||||
| import eu.kanade.domain.library.service.LibraryPreferences | ||||
| import eu.kanade.domain.source.service.SourcePreferences | ||||
| import eu.kanade.presentation.components.NavigationBar | ||||
| import eu.kanade.presentation.components.NavigationRail | ||||
| import eu.kanade.presentation.util.isTabletUi | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.ui.browse.BrowseTab | ||||
| @@ -55,6 +53,8 @@ import kotlinx.coroutines.flow.receiveAsFlow | ||||
| import kotlinx.coroutines.launch | ||||
| import soup.compose.material.motion.animation.materialFadeThroughIn | ||||
| import soup.compose.material.motion.animation.materialFadeThroughOut | ||||
| import tachiyomi.presentation.core.components.material.NavigationBar | ||||
| import tachiyomi.presentation.core.components.material.NavigationRail | ||||
| import tachiyomi.presentation.core.components.material.Scaffold | ||||
| import uy.kohesive.injekt.Injekt | ||||
| import uy.kohesive.injekt.api.get | ||||
|   | ||||
| @@ -34,7 +34,6 @@ import eu.kanade.presentation.components.DeleteLibraryMangaDialog | ||||
| import eu.kanade.presentation.components.EmptyScreen | ||||
| import eu.kanade.presentation.components.EmptyScreenAction | ||||
| import eu.kanade.presentation.components.LibraryBottomActionMenu | ||||
| import eu.kanade.presentation.components.LoadingScreen | ||||
| import eu.kanade.presentation.library.components.LibraryContent | ||||
| import eu.kanade.presentation.library.components.LibraryToolbar | ||||
| import eu.kanade.presentation.util.Tab | ||||
| @@ -55,6 +54,7 @@ import tachiyomi.domain.category.model.Category | ||||
| import tachiyomi.domain.library.model.LibraryManga | ||||
| import tachiyomi.domain.library.model.display | ||||
| import tachiyomi.domain.manga.model.Manga | ||||
| import tachiyomi.presentation.core.components.LoadingScreen | ||||
| import tachiyomi.presentation.core.components.material.Scaffold | ||||
|  | ||||
| object LibraryTab : Tab { | ||||
|   | ||||
| @@ -26,7 +26,6 @@ import eu.kanade.domain.manga.model.hasCustomCover | ||||
| import eu.kanade.domain.manga.model.toSManga | ||||
| import eu.kanade.presentation.components.ChangeCategoryDialog | ||||
| import eu.kanade.presentation.components.DuplicateMangaDialog | ||||
| import eu.kanade.presentation.components.LoadingScreen | ||||
| import eu.kanade.presentation.components.NavigatorAdaptiveSheet | ||||
| import eu.kanade.presentation.manga.ChapterSettingsDialog | ||||
| import eu.kanade.presentation.manga.EditCoverAction | ||||
| @@ -56,6 +55,7 @@ import tachiyomi.core.util.lang.withIOContext | ||||
| import tachiyomi.core.util.system.logcat | ||||
| import tachiyomi.domain.chapter.model.Chapter | ||||
| import tachiyomi.domain.manga.model.Manga | ||||
| import tachiyomi.presentation.core.components.LoadingScreen | ||||
|  | ||||
| class MangaScreen( | ||||
|     private val mangaId: Long, | ||||
|   | ||||
| @@ -46,7 +46,6 @@ import eu.kanade.presentation.manga.TrackInfoDialogHome | ||||
| import eu.kanade.presentation.manga.TrackScoreSelector | ||||
| import eu.kanade.presentation.manga.TrackServiceSearch | ||||
| import eu.kanade.presentation.manga.TrackStatusSelector | ||||
| import eu.kanade.presentation.util.padding | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.data.database.models.Track | ||||
| import eu.kanade.tachiyomi.data.track.EnhancedTrackService | ||||
| @@ -73,6 +72,7 @@ import tachiyomi.domain.track.interactor.DeleteTrack | ||||
| import tachiyomi.domain.track.interactor.GetTracks | ||||
| import tachiyomi.domain.track.interactor.InsertTrack | ||||
| import tachiyomi.presentation.core.components.material.AlertDialogContent | ||||
| import tachiyomi.presentation.core.components.material.padding | ||||
| import uy.kohesive.injekt.Injekt | ||||
| import uy.kohesive.injekt.api.get | ||||
| import java.time.Instant | ||||
|   | ||||
| @@ -13,7 +13,6 @@ import cafe.adriel.voyager.core.screen.Screen | ||||
| import cafe.adriel.voyager.navigator.LocalNavigator | ||||
| import cafe.adriel.voyager.navigator.Navigator | ||||
| import cafe.adriel.voyager.navigator.currentOrThrow | ||||
| import eu.kanade.presentation.components.TwoPanelBox | ||||
| import eu.kanade.presentation.more.settings.screen.AboutScreen | ||||
| import eu.kanade.presentation.more.settings.screen.SettingsBackupScreen | ||||
| import eu.kanade.presentation.more.settings.screen.SettingsGeneralScreen | ||||
| @@ -21,6 +20,7 @@ import eu.kanade.presentation.more.settings.screen.SettingsMainScreen | ||||
| import eu.kanade.presentation.util.DefaultNavigatorScreenTransition | ||||
| import eu.kanade.presentation.util.LocalBackPress | ||||
| import eu.kanade.presentation.util.isTabletUi | ||||
| import tachiyomi.presentation.core.components.TwoPanelBox | ||||
|  | ||||
| class SettingsScreen private constructor( | ||||
|     val toBackup: Boolean, | ||||
|   | ||||
| @@ -3,11 +3,11 @@ package eu.kanade.tachiyomi.ui.setting.track | ||||
| import android.content.Intent | ||||
| import android.net.Uri | ||||
| import android.os.Bundle | ||||
| import eu.kanade.presentation.components.LoadingScreen | ||||
| import eu.kanade.tachiyomi.data.track.TrackManager | ||||
| import eu.kanade.tachiyomi.ui.base.activity.BaseActivity | ||||
| import eu.kanade.tachiyomi.ui.main.MainActivity | ||||
| import eu.kanade.tachiyomi.util.view.setComposeContent | ||||
| import tachiyomi.presentation.core.components.LoadingScreen | ||||
| import uy.kohesive.injekt.injectLazy | ||||
|  | ||||
| abstract class BaseOAuthLoginActivity : BaseActivity() { | ||||
|   | ||||
| @@ -10,10 +10,10 @@ import cafe.adriel.voyager.core.screen.uniqueScreenKey | ||||
| import cafe.adriel.voyager.navigator.LocalNavigator | ||||
| import cafe.adriel.voyager.navigator.currentOrThrow | ||||
| import eu.kanade.presentation.components.AppBar | ||||
| import eu.kanade.presentation.components.LoadingScreen | ||||
| import eu.kanade.presentation.more.stats.StatsScreenContent | ||||
| import eu.kanade.presentation.more.stats.StatsScreenState | ||||
| import eu.kanade.tachiyomi.R | ||||
| import tachiyomi.presentation.core.components.LoadingScreen | ||||
| import tachiyomi.presentation.core.components.material.Scaffold | ||||
|  | ||||
| class StatsScreen : Screen { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user