diff --git a/app/src/main/java/eu/kanade/presentation/components/ItemBadges.kt b/app/src/main/java/eu/kanade/presentation/components/ItemBadges.kt new file mode 100644 index 000000000..cbdbc06d0 --- /dev/null +++ b/app/src/main/java/eu/kanade/presentation/components/ItemBadges.kt @@ -0,0 +1,36 @@ +package eu.kanade.presentation.components + +import androidx.compose.foundation.background +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.unit.dp + +@Composable +fun ItemBadges( + modifier: Modifier = Modifier, + primaryText: String, +) { + Row( + modifier = modifier.clip(RoundedCornerShape(4.dp)), + ) { + Text( + text = primaryText, + modifier = Modifier + .background(MaterialTheme.colorScheme.primary) + .padding(horizontal = 4.dp, vertical = 2.dp), + style = MaterialTheme.typography.bodyMedium.copy( + color = MaterialTheme.colorScheme.onPrimary, + fontWeight = FontWeight.Medium, + ), + ) + + // TODO: support more badges (e.g., for library items) + } +} diff --git a/app/src/main/java/eu/kanade/presentation/source/MigrateSourceScreen.kt b/app/src/main/java/eu/kanade/presentation/source/MigrateSourceScreen.kt index 179ce3918..58d3eeb6c 100644 --- a/app/src/main/java/eu/kanade/presentation/source/MigrateSourceScreen.kt +++ b/app/src/main/java/eu/kanade/presentation/source/MigrateSourceScreen.kt @@ -1,13 +1,11 @@ package eu.kanade.presentation.source -import androidx.compose.foundation.background import androidx.compose.foundation.layout.WindowInsets import androidx.compose.foundation.layout.asPaddingValues import androidx.compose.foundation.layout.navigationBars import androidx.compose.foundation.layout.padding import androidx.compose.foundation.lazy.LazyColumn import androidx.compose.foundation.lazy.items -import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.material3.LocalTextStyle import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Text @@ -16,13 +14,13 @@ import androidx.compose.runtime.Composable import androidx.compose.runtime.collectAsState import androidx.compose.runtime.getValue import androidx.compose.ui.Modifier -import androidx.compose.ui.draw.clip import androidx.compose.ui.input.nestedscroll.NestedScrollConnection import androidx.compose.ui.input.nestedscroll.nestedScroll import androidx.compose.ui.res.stringResource import androidx.compose.ui.unit.dp import eu.kanade.domain.source.model.Source import eu.kanade.presentation.components.EmptyScreen +import eu.kanade.presentation.components.ItemBadges import eu.kanade.presentation.components.LoadingScreen import eu.kanade.presentation.source.components.BaseSourceItem import eu.kanade.presentation.theme.header @@ -115,16 +113,7 @@ fun MigrateSourceItem( onClickItem = onClickItem, onLongClickItem = onLongClickItem, action = { - Text( - text = "$count", - modifier = Modifier - .clip(RoundedCornerShape(4.dp)) - .background(MaterialTheme.colorScheme.primary) - .padding(horizontal = 8.dp, vertical = 2.dp), - style = MaterialTheme.typography.bodyMedium.copy( - color = MaterialTheme.colorScheme.onPrimary - ) - ) + ItemBadges(primaryText = "$count") TextButton(onClick = onClickAll) { Text( text = stringResource(id = R.string.all),