Slackbot
03/01/2026, 10:27 AMAndré Thiele
03/01/2026, 11:25 AMAndré Thiele
03/01/2026, 11:50 AMclass SystemTimeZoneObserver : TimeZoneObserver {
@Composable
override fun rememberTimeZone(): TimeZone {
val context = LocalContext.current
return produceState(initialValue = TimeZone.currentSystemDefault()) {
val receiver =
object : BroadcastReceiver() {
override fun onReceive(ctx: Context?, intent: Intent?) {
value = TimeZone.currentSystemDefault()
}
}
val filter = IntentFilter(Intent.ACTION_TIMEZONE_CHANGED)
filter.addAction(Intent.ACTION_TIME_CHANGED)
filter.addAction(Intent.ACTION_DATE_CHANGED)
context.registerReceiver(receiver, filter)
awaitDispose { context.unregisterReceiver(receiver) }
}
.value
}
}