From 0c9c4c0347e779ffc2718711b164ec6196a2a22f Mon Sep 17 00:00:00 2001 From: arkon Date: Sat, 30 Jul 2022 12:27:32 -0400 Subject: [PATCH] Mimic M3 rounded tab indicators --- .../presentation/library/components/LibraryTabs.kt | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/app/src/main/java/eu/kanade/presentation/library/components/LibraryTabs.kt b/app/src/main/java/eu/kanade/presentation/library/components/LibraryTabs.kt index ac27d2e088..c2cd117878 100644 --- a/app/src/main/java/eu/kanade/presentation/library/components/LibraryTabs.kt +++ b/app/src/main/java/eu/kanade/presentation/library/components/LibraryTabs.kt @@ -3,9 +3,12 @@ package eu.kanade.presentation.library.components import androidx.compose.foundation.isSystemInDarkTheme import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.material3.MaterialTheme import androidx.compose.material3.ScrollableTabRow import androidx.compose.material3.Tab +import androidx.compose.material3.TabRowDefaults +import androidx.compose.material3.TabRowDefaults.tabIndicatorOffset import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.State @@ -14,6 +17,8 @@ import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.rememberCoroutineScope import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import com.google.accompanist.pager.PagerState @@ -40,6 +45,13 @@ fun LibraryTabs( ScrollableTabRow( selectedTabIndex = state.currentPage, edgePadding = 0.dp, + indicator = { tabPositions -> + TabRowDefaults.Indicator( + Modifier + .tabIndicatorOffset(tabPositions[state.currentPage]) + .clip(RoundedCornerShape(topStart = 3.dp, topEnd = 3.dp)), + ) + }, ) { categories.forEachIndexed { index, category -> val count by if (showMangaCount) {