Saleh Abdulaziz
09/23/2024, 3:34 PMZach Klippenstein (he/him) [MOD]
09/23/2024, 4:41 PMSaleh Abdulaziz
09/23/2024, 5:28 PMSaleh Abdulaziz
09/23/2024, 5:29 PMSaleh Abdulaziz
09/23/2024, 5:29 PMZach Klippenstein (he/him) [MOD]
09/23/2024, 7:39 PMSaleh Abdulaziz
09/23/2024, 7:39 PM@Composable
fun TimerDisplay(startTime: Long) {
var lastDay by remember { mutableIntStateOf(0) }
var lastHour by remember { mutableIntStateOf(0) }
var lastMinute by remember { mutableIntStateOf(0) }
var lastSecond by remember { mutableIntStateOf(0) }
LaunchedEffect(startTime) {
while (isActive) {
val time = startTime.getDaysHoursMinsSecsBetweenTodayAndProvidedDate()
lastDay = time.getOrNull(0)?.toInt() ?: lastDay
lastHour = time.getOrNull(1)?.toInt() ?: lastHour
lastMinute = time.getOrNull(2)?.toInt() ?: lastMinute
lastSecond = time.getOrNull(3)?.toInt() ?: lastSecond
delay(1000L) // Updates every second
}
}
val dayString =
pluralStringResource(
id = R.plurals.line_consumption_day_title_android,
lastDay,
lastDay
)
val hoursString =
stringResource(
id = R.string.uptime_hour_min_sec,
lastHour,
lastMinute,
lastSecond
)
Row(modifier = Modifier.fillMaxWidth()) {
Text(
text = hoursString,
style = FontManager.defaultTextStyleBold14Sp,
modifier = Modifier.fillMaxWidth()
)
}
}
Saleh Abdulaziz
09/23/2024, 7:39 PMSaleh Abdulaziz
09/23/2024, 7:40 PMSaleh Abdulaziz
09/23/2024, 7:40 PMZach Klippenstein (he/him) [MOD]
09/23/2024, 7:58 PMSaleh Abdulaziz
09/23/2024, 8:37 PMSaleh Abdulaziz
09/23/2024, 9:53 PMSaleh Abdulaziz
09/23/2024, 9:54 PMSaleh Abdulaziz
09/28/2024, 3:21 AMSaleh Abdulaziz
09/28/2024, 3:22 AMSaleh Abdulaziz
09/28/2024, 3:22 AM