Colton Idle
03/02/2025, 3:33 PMeygraber
03/02/2025, 4:13 PMStylianos Gakis
03/02/2025, 4:16 PMmarlonlom
03/02/2025, 6:17 PMZach Klippenstein (he/him) [MOD]
03/02/2025, 8:52 PM@Composable
fun <T> ObservableField<T>.observeAsState(): State<T> {
val state = remember(this) { mutableStateOf(get()) }
DisposableEffect(this) {
val callback: OnPropertyChangedCallback = { _, _ -> state.value = get() }
addOnPropertyChangedCallback(callback)
onDispose {
removeOnPropertyChangedCallback(callback)
}
}
return state
}
Colton Idle
03/03/2025, 7:15 PMReturn type mismatch: expected 'androidx.compose.runtime.State<T>', actual 'T?'.
Zach Klippenstein (he/him) [MOD]
03/03/2025, 7:24 PMColton Idle
03/03/2025, 7:30 PMreturn state as State<T>
to satisfy the compilerZach Klippenstein (he/him) [MOD]
03/03/2025, 7:30 PMZach Klippenstein (he/him) [MOD]
03/03/2025, 7:30 PMout T
or something because javaColton Idle
03/03/2025, 7:31 PMZach Klippenstein (he/him) [MOD]
03/03/2025, 7:32 PMState<T?>
since get()
probably validly returns null if the property isn't initialized? I don't know anything about the contract of ObservableField
Colton Idle
03/03/2025, 7:32 PMColton Idle
03/03/2025, 7:32 PMColton Idle
03/03/2025, 7:33 PMArne Jans
03/04/2025, 8:47 AMColton Idle
03/04/2025, 1:49 PMColton Idle
03/04/2025, 1:50 PM