feat: add maximum content width constraint for wide displays (Closes #2)

Add MAX_CONTENT_WIDTH (1200dp) to UiConstants and wrap scaffold content
in a centered Box with widthIn(max) to prevent uncomfortable stretching
on ultra-wide monitors.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
shahondin1624
2026-03-13 12:55:34 +01:00
parent 1555275aeb
commit bbad9a7144
2 changed files with 16 additions and 5 deletions

View File

@@ -20,6 +20,7 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
import org.jetbrains.compose.ui.tooling.preview.Preview import org.jetbrains.compose.ui.tooling.preview.Preview
import org.shahondin1624.lib.components.UiConstants
import org.shahondin1624.lib.components.charactermodel.attributespage.AttributesPage import org.shahondin1624.lib.components.charactermodel.attributespage.AttributesPage
import org.shahondin1624.model.EXAMPLE_CHARACTER import org.shahondin1624.model.EXAMPLE_CHARACTER
import org.shahondin1624.theme.AppTheme import org.shahondin1624.theme.AppTheme
@@ -121,11 +122,17 @@ private fun AppContent(
) )
} }
) { paddingValues -> ) { paddingValues ->
Column( Box(
modifier = Modifier modifier = Modifier
.fillMaxSize() .fillMaxSize()
.padding(paddingValues) .padding(paddingValues)
.windowInsetsPadding(WindowInsets.safeDrawing) .windowInsetsPadding(WindowInsets.safeDrawing),
contentAlignment = Alignment.TopCenter
) {
Column(
modifier = Modifier
.widthIn(max = UiConstants.MAX_CONTENT_WIDTH)
.fillMaxWidth()
.padding(16.dp), .padding(16.dp),
horizontalAlignment = Alignment.CenterHorizontally horizontalAlignment = Alignment.CenterHorizontally
) { ) {
@@ -134,3 +141,4 @@ private fun AppContent(
} }
} }
} }
}

View File

@@ -4,4 +4,7 @@ import androidx.compose.ui.unit.dp
object UiConstants { object UiConstants {
val SMALL_PADDING = 6.dp val SMALL_PADDING = 6.dp
/** Maximum width for the main content area to prevent uncomfortable stretching on ultra-wide displays. */
val MAX_CONTENT_WIDTH = 1200.dp
} }