From c6108fc807ddc8aed98c3213a1dc1d0579ece45f Mon Sep 17 00:00:00 2001 From: Cutiful <113351087+Syaroful@users.noreply.github.com> Date: Thu, 12 Jun 2025 11:39:51 +0700 Subject: [PATCH] fix: adjust control grid height and card padding --- .../control_feature/components/ControlCard.kt | 4 +++- .../control_feature/page/ControlActuatorScreen.kt | 6 ++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/agrilinkvocpro/control_feature/src/main/java/com/syaroful/agrilinkvocpro/control_feature/components/ControlCard.kt b/agrilinkvocpro/control_feature/src/main/java/com/syaroful/agrilinkvocpro/control_feature/components/ControlCard.kt index 50b8907..3716346 100644 --- a/agrilinkvocpro/control_feature/src/main/java/com/syaroful/agrilinkvocpro/control_feature/components/ControlCard.kt +++ b/agrilinkvocpro/control_feature/src/main/java/com/syaroful/agrilinkvocpro/control_feature/components/ControlCard.kt @@ -15,6 +15,7 @@ import androidx.compose.foundation.layout.size import androidx.compose.foundation.shape.CircleShape import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.material3.Icon +import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Switch import androidx.compose.material3.SwitchDefaults import androidx.compose.material3.Text @@ -39,13 +40,14 @@ fun ControlCard( isOn: Boolean, onToggle: (Boolean) -> Unit ) { - val backgroundColor = if (isOn) DarkGreen else if (isSystemInDarkTheme()) Color.Black else Color.White + val backgroundColor = if (isOn) DarkGreen else MaterialTheme.colorScheme.surfaceContainer val iconTint = if (isOn) Color(0xFFB2FF59) else Color(0xFF4CAF50) val textColor = if (isSystemInDarkTheme()) Color.White else Color.Black val trackColor = if (isSystemInDarkTheme()) DarkGrey else DividerColor Column( modifier = Modifier + .padding(vertical = 8.dp) .clip(RoundedCornerShape(12.dp)) .border(1.dp, MainGreen.copy(alpha = 0.4f), RoundedCornerShape(12.dp)) .background(backgroundColor) diff --git a/agrilinkvocpro/control_feature/src/main/java/com/syaroful/agrilinkvocpro/control_feature/page/ControlActuatorScreen.kt b/agrilinkvocpro/control_feature/src/main/java/com/syaroful/agrilinkvocpro/control_feature/page/ControlActuatorScreen.kt index fadb704..5d3ff52 100644 --- a/agrilinkvocpro/control_feature/src/main/java/com/syaroful/agrilinkvocpro/control_feature/page/ControlActuatorScreen.kt +++ b/agrilinkvocpro/control_feature/src/main/java/com/syaroful/agrilinkvocpro/control_feature/page/ControlActuatorScreen.kt @@ -40,7 +40,6 @@ fun ControlActuatorScreen() { Column(horizontalAlignment = Alignment.CenterHorizontally, modifier = Modifier.fillMaxWidth()) { Text("Control Actuator", style = MaterialTheme.typography.titleMedium) } - }, navigationIcon = { IconButton(onClick = { }) { @@ -87,12 +86,11 @@ fun ControlActuatorScreen() { @Composable fun ControlGrid(iconRes: Int, items: List) { val states = remember { items.map { mutableStateOf(false) } } + val gridHeight = (items.size / 2.0).coerceAtLeast(1.0) * 170 LazyVerticalGrid( columns = GridCells.Fixed(2), - modifier = Modifier - .fillMaxWidth() - .height(300.dp), + modifier = Modifier.fillMaxWidth().height(gridHeight.dp), verticalArrangement = Arrangement.spacedBy(12.dp), horizontalArrangement = Arrangement.spacedBy(12.dp) ) {