fix(apps): post-wave visual polish

- fan-prediction: duplicate offline banner removed.
- audiosurf: ride rows 46dp so artist lines are not clipped.
- shuffle by album: transport wraps (FlowRow) so 'shuffle' is readable.
- sudoku/reversi: duplicate in-content headings removed (H-13).
- weather: condition glyph clipped so no stroke bleeds into neighbours.
This commit is contained in:
John Smith
2026-09-11 11:47:04 -04:00
parent f460587d8a
commit 73574a5998
6 changed files with 8 additions and 21 deletions
@@ -1,3 +1,4 @@
@file:OptIn(androidx.compose.foundation.layout.ExperimentalLayoutApi::class)
package com.heretek.dorado_hd.ui.apps
import androidx.compose.animation.core.LinearEasing
@@ -466,10 +467,10 @@ fun ShuffleByAlbumApp() {
}
}
}
Row(
verticalAlignment = Alignment.CenterVertically,
horizontalArrangement = Arrangement.spacedBy(16.dp),
modifier = Modifier.fillMaxWidth().horizontalScroll(rememberScrollState()),
androidx.compose.foundation.layout.FlowRow(
horizontalArrangement = Arrangement.spacedBy(14.dp),
verticalArrangement = Arrangement.spacedBy(4.dp),
modifier = Modifier.fillMaxWidth(),
) {
EdgeCropText(
text = "◀◀",
@@ -548,7 +548,7 @@ private fun RidePickRow(pick: RidePick, medal: AudiosurfMedal?, onStart: () -> U
Row(
Modifier
.fillMaxWidth()
.height(38.dp)
.height(46.dp)
.background(colors.tile)
.border(0.5.dp, colors.border)
.pointerInput(pick) { detectTapGestures(onTap = { onStart() }) }
@@ -332,13 +332,6 @@ private fun FanSportsScreen(
text = FanPredictionEngine.favoritesLine(state),
style = TextStyle(fontFamily = Selawik, fontSize = DoradoTokens.TYPE_CAPTION.sp, color = colors.textSecondary),
)
if (state.banner != null) {
Spacer(Modifier.height(4.dp))
BasicText(
text = state.banner,
style = TextStyle(fontFamily = Selawik, fontSize = DoradoTokens.TYPE_CAPTION.sp, color = colors.accent),
)
}
Spacer(Modifier.height(10.dp))
androidx.compose.foundation.layout.FlowRow(
Modifier.fillMaxWidth(),
@@ -169,10 +169,6 @@ fun ReversiApp() {
Box(Modifier.fillMaxSize()) {
if (screen == ReversiScreen.SETUP) {
Column(Modifier.fillMaxSize().padding(DoradoTokens.EDGE.dp), verticalArrangement = Arrangement.spacedBy(6.dp)) {
BasicText(
text = "reversi",
style = TextStyle(fontFamily = Selawik, fontSize = DoradoTokens.TYPE_NOW_TITLE.sp, color = colors.textPrimary),
)
BasicText(
text = "black moves first",
style = TextStyle(fontFamily = Selawik, fontSize = DoradoTokens.TYPE_CAPTION.sp, color = colors.textSecondary),
@@ -399,10 +399,6 @@ private fun SetupPanel(
) {
val colors = LocalDoradoColors.current
Column(verticalArrangement = Arrangement.spacedBy(6.dp)) {
BasicText(
text = "sudoku",
style = TextStyle(fontFamily = Selawik, fontSize = DoradoTokens.TYPE_NOW_TITLE.sp, color = colors.textPrimary),
)
Row(verticalAlignment = Alignment.CenterVertically) {
BasicText(text = "type", style = TextStyle(fontFamily = Selawik, fontSize = DoradoTokens.TYPE_LIST.sp, color = colors.textSecondary))
Spacer(Modifier.width(8.dp))
@@ -31,6 +31,7 @@ import androidx.compose.runtime.remember
import androidx.compose.runtime.setValue
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clipToBounds
import androidx.compose.ui.geometry.Offset
import androidx.compose.ui.geometry.Size
import androidx.compose.ui.graphics.Color
@@ -490,7 +491,7 @@ private fun WxBody(text: String) {
@Composable
private fun SkyGlyph(sky: Sky?, size: Dp, modifier: Modifier = Modifier) {
val colors = LocalDoradoColors.current
Canvas(modifier.size(size)) {
Canvas(modifier.size(size).clipToBounds()) {
val w = this.size.width
val h = this.size.height
val ink = colors.textPrimary