composed Modifier changes (#9631)
Referring at the examples and other internal usages, the resulting stateful Modifier should be separated from all the previous Modifier chain. (cherry picked from commit 25b0458930b3de21340cdc201e7e5e46501dbda1)
This commit is contained in:
parent
9f1b349960
commit
434b8d3ae8
@ -245,7 +245,7 @@ private fun Modifier.commonClickable(
|
||||
) = composed {
|
||||
val haptic = LocalHapticFeedback.current
|
||||
|
||||
this.combinedClickable(
|
||||
Modifier.combinedClickable(
|
||||
enabled = enabled,
|
||||
onLongClick = {
|
||||
onLongClick()
|
||||
|
@ -113,7 +113,7 @@ internal fun Modifier.highlightBackground(highlighted: Boolean): Modifier = comp
|
||||
tween(200)
|
||||
},
|
||||
)
|
||||
then(Modifier.background(color = highlight))
|
||||
Modifier.background(color = highlight)
|
||||
}
|
||||
|
||||
internal val TrailingWidgetBuffer = 16.dp
|
||||
|
@ -30,20 +30,21 @@ import tachiyomi.presentation.core.components.Pill
|
||||
private fun Modifier.tabIndicatorOffset(
|
||||
currentTabPosition: TabPosition,
|
||||
currentPageOffsetFraction: Float,
|
||||
) = composed {
|
||||
val currentTabWidth by animateDpAsState(
|
||||
targetValue = currentTabPosition.width,
|
||||
animationSpec = spring(stiffness = Spring.StiffnessMediumLow),
|
||||
)
|
||||
val offset by animateDpAsState(
|
||||
targetValue = currentTabPosition.left + (currentTabWidth * currentPageOffsetFraction),
|
||||
animationSpec = spring(stiffness = Spring.StiffnessMediumLow),
|
||||
)
|
||||
fillMaxWidth()
|
||||
.wrapContentSize(Alignment.BottomStart)
|
||||
.offset { IntOffset(x = offset.roundToPx(), y = 0) }
|
||||
.width(currentTabWidth)
|
||||
}
|
||||
) = fillMaxWidth()
|
||||
.wrapContentSize(Alignment.BottomStart)
|
||||
.composed {
|
||||
val currentTabWidth by animateDpAsState(
|
||||
targetValue = currentTabPosition.width,
|
||||
animationSpec = spring(stiffness = Spring.StiffnessMediumLow),
|
||||
)
|
||||
val offset by animateDpAsState(
|
||||
targetValue = currentTabPosition.left + (currentTabWidth * currentPageOffsetFraction),
|
||||
animationSpec = spring(stiffness = Spring.StiffnessMediumLow),
|
||||
)
|
||||
Modifier
|
||||
.offset { IntOffset(x = offset.roundToPx(), y = 0) }
|
||||
.width(currentTabWidth)
|
||||
}
|
||||
|
||||
@Composable
|
||||
fun TabIndicator(
|
||||
|
@ -25,13 +25,13 @@ import androidx.compose.ui.input.key.onPreviewKeyEvent
|
||||
import androidx.compose.ui.platform.LocalFocusManager
|
||||
import tachiyomi.presentation.core.components.material.SecondaryItemAlpha
|
||||
|
||||
fun Modifier.selectedBackground(isSelected: Boolean): Modifier = composed {
|
||||
if (isSelected) {
|
||||
fun Modifier.selectedBackground(isSelected: Boolean): Modifier = if (isSelected) {
|
||||
composed {
|
||||
val alpha = if (isSystemInDarkTheme()) 0.16f else 0.22f
|
||||
background(MaterialTheme.colorScheme.secondary.copy(alpha = alpha))
|
||||
} else {
|
||||
this
|
||||
Modifier.background(MaterialTheme.colorScheme.secondary.copy(alpha = alpha))
|
||||
}
|
||||
} else {
|
||||
this
|
||||
}
|
||||
|
||||
fun Modifier.secondaryItemAlpha(): Modifier = this.alpha(SecondaryItemAlpha)
|
||||
@ -40,7 +40,7 @@ fun Modifier.clickableNoIndication(
|
||||
onLongClick: (() -> Unit)? = null,
|
||||
onClick: () -> Unit,
|
||||
): Modifier = composed {
|
||||
this.combinedClickable(
|
||||
Modifier.combinedClickable(
|
||||
interactionSource = remember { MutableInteractionSource() },
|
||||
indication = null,
|
||||
onLongClick = onLongClick,
|
||||
|
Loading…
x
Reference in New Issue
Block a user