manager: dynamic seasonal icon for kernelsu working statuscard

This commit is contained in:
Rifat Azad
2025-01-05 12:02:08 +06:00
parent 0b93051455
commit e1f163a3dc

View File

@@ -22,6 +22,7 @@ import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.painter.Painter
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.input.nestedscroll.nestedScroll
import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.platform.LocalUriHandler
@@ -41,7 +42,7 @@ import com.rifsxd.ksunext.R
import com.rifsxd.ksunext.ui.component.rememberConfirmDialog
import com.rifsxd.ksunext.ui.util.*
import com.rifsxd.ksunext.ui.util.module.LatestVersionInfo
import androidx.compose.ui.graphics.vector.ImageVector
import java.util.*
@OptIn(ExperimentalMaterial3Api::class)
@Destination<RootGraph>(start = true)
@@ -209,6 +210,18 @@ private fun TopBar(
)
}
@Composable
fun getSeasonalIcon(): ImageVector {
val month = Calendar.getInstance().get(Calendar.MONTH) // 0-11 for January-December
return when (month) {
Calendar.DECEMBER, Calendar.JANUARY, Calendar.FEBRUARY -> Icons.Filled.AcUnit // Winter
Calendar.MARCH, Calendar.APRIL, Calendar.MAY -> Icons.Filled.Spa // Spring
Calendar.JUNE, Calendar.JULY, Calendar.AUGUST -> Icons.Filled.WbSunny // Summer
Calendar.SEPTEMBER, Calendar.OCTOBER, Calendar.NOVEMBER -> Icons.Filled.Forest // Fall
else -> Icons.Filled.Whatshot // Fallback icon
}
}
@Composable
private fun StatusCard(
kernelVersion: KernelVersion,
@@ -246,7 +259,10 @@ private fun StatusCard(
val workingText =
"${stringResource(id = R.string.home_working)}$workingMode$safeMode"
Icon(Icons.Filled.AcUnit, stringResource(R.string.home_working))
Icon(
getSeasonalIcon(), // Use dynamic seasonal icon
contentDescription = stringResource(R.string.home_working)
)
Column(Modifier.padding(start = 20.dp)) {
Text(
text = workingText,