Add version on the landing screen.

This commit is contained in:
Andres Gomez, Thomas (ITDV RL) 2024-06-24 14:09:44 +02:00
parent 395f54d086
commit aaf4968be3

View file

@ -26,7 +26,6 @@ import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.systemBarsPadding
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Surface
import androidx.compose.material3.Text
@ -34,6 +33,7 @@ import androidx.compose.runtime.Composable
import androidx.compose.runtime.State
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.composed
import androidx.compose.ui.draw.clip
@ -60,6 +60,7 @@ import com.pixelized.rplexicon.ui.navigation.screens.navigateToLocation
import com.pixelized.rplexicon.ui.navigation.screens.navigateToQuestList
import com.pixelized.rplexicon.ui.navigation.screens.navigateToSearch
import com.pixelized.rplexicon.ui.navigation.screens.navigateToSummary
import com.pixelized.rplexicon.ui.screens.authentication.VersionViewModel
import com.pixelized.rplexicon.ui.screens.landing.LandingItemUio.Feature.ADVENTURE
import com.pixelized.rplexicon.ui.screens.landing.LandingItemUio.Feature.CHARACTER
import com.pixelized.rplexicon.ui.screens.landing.LandingItemUio.Feature.GAME_MASTER
@ -74,6 +75,7 @@ import com.pixelized.rplexicon.utilitary.extentions.modifier.scrollOffset
@Composable
fun LandingScreen(
viewModel: LandingViewModel = hiltViewModel(),
versionVM: VersionViewModel = hiltViewModel(),
) {
val screen = LocalScreenNavHost.current
@ -93,6 +95,7 @@ fun LandingScreen(
characters = viewModel.characterSheets,
tools = viewModel.toolFeatures,
encyclopedia = viewModel.lexiconFeatures,
version = versionVM.version,
onFeature = {
when (it.feature) {
CHARACTER -> it.title?.let { name ->
@ -133,7 +136,6 @@ fun LandingScreen(
}
}
@OptIn(ExperimentalMaterial3Api::class)
@Composable
private fun LandingContent(
modifier: Modifier = Modifier,
@ -148,6 +150,7 @@ private fun LandingContent(
characters: State<List<List<LandingItemUio>>>,
tools: State<List<List<LandingItemUio>>>,
encyclopedia: State<List<List<LandingItemUio>>>,
version: VersionViewModel.Version,
onFeature: (LandingItemUio) -> Unit,
) {
val density = LocalDensity.current
@ -330,6 +333,15 @@ private fun LandingContent(
}
}
}
Text(
modifier = Modifier
.align(alignment = Alignment.End)
.padding(top = 32.dp),
style = MaterialTheme.typography.labelSmall,
fontStyle = FontStyle.Italic,
text = version.toText(),
)
}
}
}
@ -371,8 +383,8 @@ private fun Modifier.magic(): Modifier = composed {
}
@Composable
@Preview(uiMode = UI_MODE_NIGHT_NO, heightDp = 1300)
@Preview(uiMode = UI_MODE_NIGHT_YES, heightDp = 1300)
@Preview(uiMode = UI_MODE_NIGHT_NO, heightDp = 1332)
@Preview(uiMode = UI_MODE_NIGHT_YES, heightDp = 1332)
private fun LandingPreview() {
LexiconTheme {
Surface {
@ -472,6 +484,7 @@ private fun LandingPreview() {
),
)
},
version = VersionViewModel.Version(R.string.app_name, "0.0.0", "0", true),
onFeature = { },
)
}