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

Merged
shahondin1624 merged 1 commits from feature/issue-2-maximum-content-width-constraint into main 2026-03-13 12:55:51 +01:00
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
) { ) {
@@ -133,4 +140,5 @@ 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
} }