From 0e92f37c9fc4f466338ce2faedc76581989158ed Mon Sep 17 00:00:00 2001 From: fankesyooni Date: Fri, 1 Dec 2023 11:07:02 +0800 Subject: [PATCH] feat: add LocalRippleColor in Interaction --- .../com/highcapable/flexiui/interaction/Interaction.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/flexiui-core/src/commonMain/kotlin/com/highcapable/flexiui/interaction/Interaction.kt b/flexiui-core/src/commonMain/kotlin/com/highcapable/flexiui/interaction/Interaction.kt index fe359a0..409483f 100644 --- a/flexiui-core/src/commonMain/kotlin/com/highcapable/flexiui/interaction/Interaction.kt +++ b/flexiui-core/src/commonMain/kotlin/com/highcapable/flexiui/interaction/Interaction.kt @@ -27,12 +27,14 @@ import androidx.compose.foundation.Indication import androidx.compose.foundation.interaction.MutableInteractionSource import androidx.compose.runtime.Composable import androidx.compose.runtime.ReadOnlyComposable +import androidx.compose.runtime.compositionLocalOf import androidx.compose.runtime.remember import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color import androidx.compose.ui.semantics.Role import androidx.compose.ui.unit.Dp import com.highcapable.flexiui.LocalColors +import com.highcapable.flexiui.extension.orElse import androidx.compose.foundation.clickable as foundationClickable import androidx.compose.foundation.selection.selectable as foundationSelectable import androidx.compose.foundation.selection.toggleable as foundationToggleable @@ -133,9 +135,11 @@ object Interaction { val rippleColor: Color @Composable @ReadOnlyComposable - get() = defaultInteractionRippleColor() + get() = LocalRippleColor.current.orElse() ?: defaultInteractionRippleColor() } +val LocalRippleColor = compositionLocalOf { Color.Unspecified } + @Composable @ReadOnlyComposable private fun defaultInteractionRippleColor() = LocalColors.current.themeSecondary \ No newline at end of file