From 2639d884921fd4fb99ce971af135e28b101c04c0 Mon Sep 17 00:00:00 2001 From: FatttSnake Date: Thu, 26 Sep 2024 18:44:59 +0800 Subject: [PATCH] Refactor(ClickableText): Replace ClickableText with Text --- .../oxygen/toolbox/ui/component/ClickableText.kt | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/app/src/main/kotlin/top/fatweb/oxygen/toolbox/ui/component/ClickableText.kt b/app/src/main/kotlin/top/fatweb/oxygen/toolbox/ui/component/ClickableText.kt index ea0ba91..6e57688 100644 --- a/app/src/main/kotlin/top/fatweb/oxygen/toolbox/ui/component/ClickableText.kt +++ b/app/src/main/kotlin/top/fatweb/oxygen/toolbox/ui/component/ClickableText.kt @@ -1,10 +1,11 @@ package top.fatweb.oxygen.toolbox.ui.component import androidx.annotation.StringRes -import androidx.compose.foundation.text.ClickableText import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.text.LinkAnnotation import androidx.compose.ui.text.SpanStyle import androidx.compose.ui.text.buildAnnotatedString import androidx.compose.ui.text.withStyle @@ -14,8 +15,8 @@ import top.fatweb.oxygen.toolbox.ui.util.ResourcesUtils fun ClickableText( @StringRes text: Int, @StringRes replaceText: Int, - onClick: (Int) -> Unit - ) { + onClick: () -> Unit +) { val context = LocalContext.current val primaryColor = MaterialTheme.colorScheme.primary @@ -30,7 +31,10 @@ fun ClickableText( clickablePart ) append(mainText.substringBefore(clickablePart)) - pushStringAnnotation(tag = "Click", annotation = clickablePart) + pushLink(LinkAnnotation.Clickable( + tag = "Click", + linkInteractionListener = { onClick() } + )) withStyle(style = SpanStyle(color = primaryColor)) { append(clickablePart) } @@ -38,5 +42,5 @@ fun ClickableText( append(mainText.substringAfter(clickablePart)) } - ClickableText(text = annotatedString, onClick = onClick) + Text(text = annotatedString) } \ No newline at end of file