diff --git a/app/src/main/java/eu/darken/capod/main/ui/overview/cards/DeviceLimitUpgradeCard.kt b/app/src/main/java/eu/darken/capod/main/ui/overview/cards/DeviceLimitUpgradeCard.kt index 3677293e..fdf43cf5 100644 --- a/app/src/main/java/eu/darken/capod/main/ui/overview/cards/DeviceLimitUpgradeCard.kt +++ b/app/src/main/java/eu/darken/capod/main/ui/overview/cards/DeviceLimitUpgradeCard.kt @@ -1,11 +1,13 @@ package eu.darken.capod.main.ui.overview.cards import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.twotone.DevicesOther import androidx.compose.material.icons.twotone.Stars import androidx.compose.material3.Button import androidx.compose.material3.Card @@ -39,10 +41,17 @@ fun DeviceLimitUpgradeCard( .fillMaxWidth() .padding(16.dp), ) { - Text( - text = pluralStringResource(R.plurals.overview_more_devices_upgrade, hiddenCount, hiddenCount), - style = MaterialTheme.typography.titleMedium, - ) + Row(verticalAlignment = Alignment.CenterVertically) { + Icon( + imageVector = Icons.TwoTone.DevicesOther, + contentDescription = null, + modifier = Modifier.padding(end = 12.dp), + ) + Text( + text = pluralStringResource(R.plurals.overview_more_devices_upgrade, hiddenCount, hiddenCount), + style = MaterialTheme.typography.titleMedium, + ) + } Spacer(modifier = Modifier.height(4.dp)) diff --git a/app/src/main/java/eu/darken/capod/main/ui/overview/cards/PermissionCard.kt b/app/src/main/java/eu/darken/capod/main/ui/overview/cards/PermissionCard.kt index f579807e..725eb04b 100644 --- a/app/src/main/java/eu/darken/capod/main/ui/overview/cards/PermissionCard.kt +++ b/app/src/main/java/eu/darken/capod/main/ui/overview/cards/PermissionCard.kt @@ -1,18 +1,30 @@ package eu.darken.capod.main.ui.overview.cards import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.automirrored.twotone.BluetoothSearching +import androidx.compose.material.icons.twotone.BatterySaver +import androidx.compose.material.icons.twotone.Bluetooth +import androidx.compose.material.icons.twotone.BluetoothConnected +import androidx.compose.material.icons.twotone.Layers +import androidx.compose.material.icons.twotone.MyLocation +import androidx.compose.material.icons.twotone.Notifications +import androidx.compose.material.icons.twotone.ShareLocation import androidx.compose.material3.Button import androidx.compose.material3.Card import androidx.compose.material3.CardDefaults +import androidx.compose.material3.Icon import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.vector.ImageVector import androidx.compose.ui.res.stringResource import androidx.compose.ui.unit.dp import eu.darken.capod.R @@ -40,10 +52,17 @@ fun PermissionCard( Column( modifier = Modifier.padding(16.dp), ) { - Text( - text = stringResource(permission.labelRes), - style = MaterialTheme.typography.titleMedium, - ) + Row(verticalAlignment = Alignment.CenterVertically) { + Icon( + imageVector = permission.iconVector(), + contentDescription = null, + modifier = Modifier.padding(end = 12.dp), + ) + Text( + text = stringResource(permission.labelRes), + style = MaterialTheme.typography.titleMedium, + ) + } Spacer(modifier = Modifier.height(4.dp)) @@ -69,3 +88,20 @@ fun PermissionCard( private fun PermissionCardPreview() = PreviewWrapper { PermissionCard(permission = Permission.BLUETOOTH_SCAN, onRequest = {}) } + +@Preview2 +@Composable +private fun PermissionCardNormalPreview() = PreviewWrapper { + PermissionCard(permission = Permission.IGNORE_BATTERY_OPTIMIZATION, onRequest = {}) +} + +private fun Permission.iconVector(): ImageVector = when (this) { + Permission.BLUETOOTH -> Icons.TwoTone.Bluetooth + Permission.BLUETOOTH_CONNECT -> Icons.TwoTone.BluetoothConnected + Permission.BLUETOOTH_SCAN -> Icons.AutoMirrored.TwoTone.BluetoothSearching + Permission.ACCESS_FINE_LOCATION -> Icons.TwoTone.MyLocation + Permission.ACCESS_BACKGROUND_LOCATION -> Icons.TwoTone.ShareLocation + Permission.IGNORE_BATTERY_OPTIMIZATION -> Icons.TwoTone.BatterySaver + Permission.SYSTEM_ALERT_WINDOW -> Icons.TwoTone.Layers + Permission.POST_NOTIFICATIONS -> Icons.TwoTone.Notifications +}