Fix skill header divider inconcistencies

This commit is contained in:
Thomas Andres Gomez 2023-11-20 16:10:46 +01:00
parent ad3750e702
commit 238ee347a1
2 changed files with 49 additions and 27 deletions

View file

@ -3,14 +3,17 @@ package com.pixelized.rplexicon.ui.screens.character.composable.actions
import android.content.res.Configuration.UI_MODE_NIGHT_NO import android.content.res.Configuration.UI_MODE_NIGHT_NO
import android.content.res.Configuration.UI_MODE_NIGHT_YES import android.content.res.Configuration.UI_MODE_NIGHT_YES
import androidx.annotation.StringRes import androidx.annotation.StringRes
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.padding
import androidx.compose.material3.Divider import androidx.compose.material3.Divider
import androidx.compose.material3.MaterialTheme import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Surface import androidx.compose.material3.Surface
import androidx.compose.material3.Text import androidx.compose.material3.Text
import androidx.compose.material3.minimumInteractiveComponentSize
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.res.stringResource import androidx.compose.ui.res.stringResource
@ -20,6 +23,7 @@ import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import com.pixelized.rplexicon.R import com.pixelized.rplexicon.R
import com.pixelized.rplexicon.ui.theme.LexiconTheme import com.pixelized.rplexicon.ui.theme.LexiconTheme
import com.pixelized.rplexicon.utilitary.LOS_HOLLOW
import com.pixelized.rplexicon.utilitary.annotateWithDropCap import com.pixelized.rplexicon.utilitary.annotateWithDropCap
import com.pixelized.rplexicon.utilitary.extentions.lexicon import com.pixelized.rplexicon.utilitary.extentions.lexicon
@ -30,28 +34,40 @@ fun GenericHeader(
padding: PaddingValues = PaddingValues(horizontal = 16.dp), padding: PaddingValues = PaddingValues(horizontal = 16.dp),
@StringRes label: Int, @StringRes label: Int,
) { ) {
Column( Surface(
modifier = modifier, modifier = modifier,
) { ) {
Surface( Column(
modifier = Modifier.fillMaxWidth(), modifier = modifier.padding(paddingValues = padding),
) { ) {
Text( Row(
modifier = Modifier.padding(paddingValues = padding), modifier = Modifier
style = MaterialTheme.typography.titleMedium, .minimumInteractiveComponentSize()
fontWeight = FontWeight.Bold, .fillMaxWidth(),
overflow = TextOverflow.Ellipsis, horizontalArrangement = Arrangement.spacedBy(4.dp),
maxLines = 1, ) {
text = annotateWithDropCap( Text(
text = stringResource(id = label), modifier = Modifier.alignByBaseline(),
style = MaterialTheme.lexicon.typography.titleMediumDropCap, style = MaterialTheme.typography.titleMedium,
), text = LOS_HOLLOW,
)
Text(
modifier = Modifier.alignByBaseline(),
style = MaterialTheme.typography.titleMedium,
fontWeight = FontWeight.Bold,
overflow = TextOverflow.Ellipsis,
maxLines = 1,
text = annotateWithDropCap(
text = stringResource(id = label),
style = MaterialTheme.lexicon.typography.titleMediumDropCap,
),
)
}
Divider(
color = MaterialTheme.lexicon.colorScheme.placeholder,
) )
} }
Divider(
modifier = Modifier.padding(paddingValues = padding),
color = MaterialTheme.lexicon.colorScheme.placeholder,
)
} }
} }

View file

@ -13,9 +13,9 @@ import androidx.compose.material3.Divider
import androidx.compose.material3.MaterialTheme import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Surface import androidx.compose.material3.Surface
import androidx.compose.material3.Text import androidx.compose.material3.Text
import androidx.compose.material3.minimumInteractiveComponentSize
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
import androidx.compose.runtime.Stable import androidx.compose.runtime.Stable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.res.stringResource import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.text.font.FontWeight
@ -27,6 +27,7 @@ import androidx.compose.ui.unit.dp
import com.pixelized.rplexicon.R import com.pixelized.rplexicon.R
import com.pixelized.rplexicon.ui.screens.character.composable.common.CounterButton import com.pixelized.rplexicon.ui.screens.character.composable.common.CounterButton
import com.pixelized.rplexicon.ui.theme.LexiconTheme import com.pixelized.rplexicon.ui.theme.LexiconTheme
import com.pixelized.rplexicon.utilitary.LOS_HOLLOW
import com.pixelized.rplexicon.utilitary.annotateWithDropCap import com.pixelized.rplexicon.utilitary.annotateWithDropCap
import com.pixelized.rplexicon.utilitary.extentions.lexicon import com.pixelized.rplexicon.utilitary.extentions.lexicon
@ -49,17 +50,23 @@ fun SpellHeader(
header: SpellHeaderUio, header: SpellHeaderUio,
onSpell: (level: Int, value: Int, max: Int) -> Unit, onSpell: (level: Int, value: Int, max: Int) -> Unit,
) { ) {
Column( Surface(
modifier = modifier, modifier = modifier,
) { ) {
Surface { Column(
modifier = modifier.padding(paddingValues = padding),
) {
Row( Row(
modifier = Modifier modifier = Modifier
.fillMaxWidth() .minimumInteractiveComponentSize()
.padding(paddingValues = padding), .fillMaxWidth(),
verticalAlignment = Alignment.CenterVertically,
horizontalArrangement = Arrangement.spacedBy(4.dp), horizontalArrangement = Arrangement.spacedBy(4.dp),
) { ) {
Text(
modifier = Modifier.alignByBaseline(),
style = MaterialTheme.typography.titleMedium,
text = LOS_HOLLOW,
)
Text( Text(
modifier = Modifier modifier = Modifier
.weight(1f) .weight(1f)
@ -90,11 +97,10 @@ fun SpellHeader(
) )
} }
} }
Divider(
color = MaterialTheme.lexicon.colorScheme.placeholder,
)
} }
Divider(
modifier = Modifier.padding(paddingValues = padding),
color = MaterialTheme.lexicon.colorScheme.placeholder,
)
} }
} }