fix: downgrade to Compose stable

Fixes PP-56
Fixes PP-61
Fixes COMPOSE-LOBSTERS-3Z
Fixes COMPOSE-LOBSTERS-40
This commit is contained in:
Harsh Shandilya 2024-05-07 14:02:08 +05:30
parent 9fe6e34015
commit 6f76a15ded
3 changed files with 40 additions and 13 deletions

View file

@ -10,7 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Changed ### Changed
- Bring back dividers between posts (I regret my earlier choices) - Bring back dividers between posts (I regret my earlier choices)
- Upgrade to Compose May releases - Upgrade to Compose May stable releases
### Fixed ### Fixed

View file

@ -13,6 +13,7 @@ import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.requiredSize import androidx.compose.foundation.layout.requiredSize
import androidx.compose.foundation.shape.CircleShape import androidx.compose.foundation.shape.CircleShape
import androidx.compose.foundation.text.ClickableText
import androidx.compose.material.icons.Icons import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.AccountCircle import androidx.compose.material.icons.filled.AccountCircle
import androidx.compose.material3.MaterialTheme import androidx.compose.material3.MaterialTheme
@ -24,8 +25,10 @@ import androidx.compose.runtime.produceState
import androidx.compose.ui.Alignment import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip import androidx.compose.ui.draw.clip
import androidx.compose.ui.text.LinkAnnotation import androidx.compose.ui.text.SpanStyle
import androidx.compose.ui.text.buildAnnotatedString import androidx.compose.ui.text.buildAnnotatedString
import androidx.compose.ui.text.style.TextDecoration
import androidx.compose.ui.text.withStyle
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import com.github.michaelbull.result.coroutines.runSuspendCatching import com.github.michaelbull.result.coroutines.runSuspendCatching
import com.github.michaelbull.result.fold import com.github.michaelbull.result.fold
@ -104,18 +107,42 @@ private fun UserProfileInternal(
Text(text = user.username, style = MaterialTheme.typography.displaySmall) Text(text = user.username, style = MaterialTheme.typography.displaySmall)
ThemedRichText(text = user.about) ThemedRichText(text = user.about)
user.invitedBy?.let { invitedBy -> user.invitedBy?.let { invitedBy ->
Text( val text = buildAnnotatedString {
text = val style =
buildAnnotatedString { with(MaterialTheme.typography.bodyMedium) {
append("Invited by ") SpanStyle(
pushLink( MaterialTheme.colorScheme.onPrimaryContainer,
LinkAnnotation.Clickable( fontSize,
tag = "username", fontWeight,
linkInteractionListener = { openUserProfile(invitedBy) }, fontStyle,
) fontSynthesis,
fontFamily,
fontFeatureSettings,
letterSpacing,
baselineShift,
textGeometricTransform,
localeList,
background,
textDecoration,
shadow,
) )
append(invitedBy)
} }
withStyle(style = style) { append("Invited by ") }
pushStringAnnotation(tag = "URL", annotation = invitedBy)
withStyle(style = style.copy(textDecoration = TextDecoration.Underline)) {
append(invitedBy)
}
pop()
}
ClickableText(
text = text,
onClick = { offset ->
text
.getStringAnnotations(tag = "URL", start = offset, end = offset)
.firstOrNull()
?.let { annotation -> openUserProfile(annotation.item) }
},
) )
} }
} }

View file

@ -28,7 +28,7 @@ androidx-activity-compose = "androidx.activity:activity-compose:1.9.0"
androidx-benchmark-macro-junit4 = { module = "androidx.benchmark:benchmark-macro-junit4", version.ref = "benchmark" } androidx-benchmark-macro-junit4 = { module = "androidx.benchmark:benchmark-macro-junit4", version.ref = "benchmark" }
androidx-browser = "androidx.browser:browser:1.8.0" androidx-browser = "androidx.browser:browser:1.8.0"
androidx-compose-animation = { module = "androidx.compose.animation:animation" } androidx-compose-animation = { module = "androidx.compose.animation:animation" }
androidx-compose-bom = "dev.chrisbanes.compose:compose-bom:2024.05.00-alpha01" androidx-compose-bom = "androidx.compose:compose-bom:2024.05.00"
androidx-compose-foundation = { module = "androidx.compose.foundation:foundation" } androidx-compose-foundation = { module = "androidx.compose.foundation:foundation" }
androidx-compose-glance = { module = "androidx.glance:glance-appwidget", version.ref = "glance" } androidx-compose-glance = { module = "androidx.glance:glance-appwidget", version.ref = "glance" }
androidx-compose-glance-m3 = { module = "androidx.glance:glance-material3", version.ref = "glance" } androidx-compose-glance-m3 = { module = "androidx.glance:glance-material3", version.ref = "glance" }