fix alert content style

This commit is contained in:
2026-07-27 22:31:04 +03:00
parent 4202547931
commit 7aef8ded96
2 changed files with 56 additions and 40 deletions
@@ -5,6 +5,8 @@ import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.padding
import androidx.compose.material3.BasicAlertDialog
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.ExperimentalMaterial3ExpressiveApi
import androidx.compose.material3.MaterialExpressiveTheme
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.ModalBottomSheet
import androidx.compose.material3.ModalBottomSheetProperties
@@ -14,8 +16,9 @@ import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.unit.dp
import androidx.compose.ui.window.DialogProperties
import ru.shadowsparky.ui.theme.getColorScheme
@OptIn(ExperimentalMaterial3Api::class)
@OptIn(ExperimentalMaterial3Api::class, ExperimentalMaterial3ExpressiveApi::class)
@Composable
fun AlertContent(
onDismissRequest: () -> Unit,
@@ -40,31 +43,35 @@ fun AlertContent(
content()
}
}
if (isTv()) {
BasicAlertDialog(
onDismissRequest = onDismissRequest,
modifier = modifier,
properties = DialogProperties(
dismissOnBackPress = canDismiss,
dismissOnClickOutside = canDismiss
)
MaterialExpressiveTheme(getColorScheme()) {
Surface(
shape = MaterialTheme.shapes.extraLarge,
color = MaterialTheme.colorScheme.surface
) {
Surface(
shape = MaterialTheme.shapes.extraLarge,
color = MaterialTheme.colorScheme.surface
) {
BaseDialogLayout()
if (isTv()) {
BasicAlertDialog(
onDismissRequest = onDismissRequest,
modifier = modifier,
properties = DialogProperties(
dismissOnBackPress = canDismiss,
dismissOnClickOutside = canDismiss
)
) {
BaseDialogLayout()
}
} else {
ModalBottomSheet(
onDismissRequest = onDismissRequest,
modifier = modifier,
properties = ModalBottomSheetProperties(
shouldDismissOnBackPress = canDismiss,
shouldDismissOnClickOutside = canDismiss
),
shape = MaterialTheme.shapes.extraLarge
) {
BaseDialogLayout()
}
}
}
} else {
ModalBottomSheet(
onDismissRequest = onDismissRequest,
modifier = modifier,
properties = ModalBottomSheetProperties(
shouldDismissOnBackPress = canDismiss,
shouldDismissOnClickOutside = canDismiss
),
shape = MaterialTheme.shapes.extraLarge
) { BaseDialogLayout() }
}
}
@@ -38,6 +38,7 @@ import com.arkivanov.decompose.extensions.compose.subscribeAsState
import org.jetbrains.compose.resources.StringResource
import org.jetbrains.compose.resources.stringResource
import ru.shadowsparky.ui.components.AlertContent
import ru.shadowsparky.ui.components.LazyColumn
import ru.shadowsparky.ui.components.Loading
import ru.shadowsparky.updater.domain.UpdateState
@@ -122,22 +123,30 @@ private fun UpdateAvailableContent(
style = MaterialTheme.typography.titleLarge,
modifier = Modifier.align(Alignment.CenterHorizontally)
)
Column(modifier = Modifier.fillMaxWidth()) {
Text(
text = stringResource(Res.string.updater_changelog_title),
style = MaterialTheme.typography.titleMedium
)
Spacer(modifier = Modifier.height(4.dp))
Text(
text = changeLog ?: stringResource(Res.string.updater_changelog_empty),
style = MaterialTheme.typography.bodyMedium
)
}
Button(onClick = onDownloadClick, modifier = Modifier.fillMaxWidth()) {
Text(
stringResource(Res.string.updater_btn_download),
style = MaterialTheme.typography.labelLarge
)
LazyColumn(modifier = Modifier.fillMaxWidth()) {
item {
Text(
text = stringResource(Res.string.updater_changelog_title),
style = MaterialTheme.typography.titleMedium
)
}
item {
Spacer(modifier = Modifier.height(4.dp))
}
item {
Text(
text = changeLog ?: stringResource(Res.string.updater_changelog_empty),
style = MaterialTheme.typography.bodyMedium
)
}
item {
Button(onClick = onDownloadClick, modifier = Modifier.fillMaxWidth()) {
Text(
stringResource(Res.string.updater_btn_download),
style = MaterialTheme.typography.labelLarge
)
}
}
}
}
}