Kyrylo
08/21/2025, 7:56 AMcompose-resources
has multiple source sets.
The question is: is it possible to use compose resources but exclude whole skiko/skia in iOS XCFramework?Lukasz Kalnik
08/21/2025, 11:34 AMOutlinedTextField
where we set keyboardOptions = KeyboardOptions(keyboardType = KeyboardType.Decimal)
. However on a Samsung S20 with Samsung keyboard, even with a German language setting, it only shows the dot key, and the comma key is greyed out. However in German the decimal separator is the comma and it should be active.
Did anyone encouter that?Quentin Suchet
08/22/2025, 2:49 PMState
read error: Reading a state that was created after the snapshot was taken or in a snapshot that has not yet been applied
I know questions regarding this have already been posted here, and OPs always ended up realizing that they've been creating a State
after snapshot was taken and then reading from it in the said snapshot, triggering the expected error.
But I have created a minimal working (actually crashing) example where I feel like the issue is not caused by this (or is it ?)
I create a MutableState as a global variable, before any composition happen, and then never create any other state. So, no snapshot happened yet (right ?)
I then read it in a @Composable
and do a bunch of write from another thread -> This trigger the error.
From my understanding, this should not cause any issue. Yes there will be inconsistency with the state with a bunch of conflicting snapshot writes and this is probably not a good pattern, but why is it crashing ?
Code and more info in 🧵Hristijan
08/22/2025, 2:50 PMTao Bai
08/22/2025, 10:17 PMJaypalsinh Barad
08/23/2025, 7:23 AMTolriq
08/23/2025, 8:25 AMlayout state is not idle before measure starts
crashes with Compose 1.10 alpha 1. Last time it was some obscure bug with viewpager found by luck. Would it be possible for Compose to log the actual state it is in for that crash to help? Or is there anything I could log about current state if i was to catch the measure issue in the Layout ?Rohit Neel
08/23/2025, 11:08 AMshivthepro
08/24/2025, 12:59 AMVivek Modi
08/24/2025, 1:58 PM1.9.0-beta03
and switched to Material 3 1.9.0-beta03
. After the update, I can no longer access CircularWavyProgressIndicator
or ButtonDefaults.MediumContainerHeight
. Has anyone else run into this issue? I’ve attached my libs
and gradle
files for reference.Slackbot
08/25/2025, 7:38 AMDumitru Preguza
08/25/2025, 7:48 AMursus
08/25/2025, 10:28 PMAnimoji
that Apple has.
I know how to extract camera frames, then extract landmarks to drive the 3D object - but I don't know how to render the 3D object with Compose.
Is it possible to render a 3D object in compose? Or maybe some 3D technology Compose can call into?Michael Paus
08/26/2025, 8:58 AMAlexander Maryanovsky
08/26/2025, 1:14 PMkrkoo3
08/26/2025, 5:04 PMSudarshan
08/27/2025, 10:05 AMTolriq
08/27/2025, 6:52 PMAmmar Abdullah
08/28/2025, 9:22 AMStefano
08/28/2025, 9:44 AMTimo Drick
08/28/2025, 11:36 AMclass TestViewModel(ctx: Application): AndroidViewModel(ctx) {
var value by mutableStateOf("Start")
init {
value = "Init"
viewModelScope.launch(Dispatchers.IO) {
value = "Loaded"
}
}
}
@Composable
fun Test(vm: TestViewModel = viewModel()) {
Text(vm.value)
}
When i change the init to:
init {
value = "Initialized"
viewModelScope.launch(Dispatchers.IO) {
withContext(Dispatchers.Main) {
value = "Loaded"
}
}
}
It shows "Loaded"
Also a delay would make the code work.
Normally i think changing a compose state variable it is not necessary to be on the UI ThreadLisadasmohapatra414
08/29/2025, 10:16 AMLukasz Kalnik
08/29/2025, 1:55 PMModalBottomSheet
(BTW happens with a Dialog
as well), the device leaves the kiosk mode and displays the status/navigation bars. Screenshots in 🧵Alexander Maryanovsky
08/30/2025, 12:45 PMTextLayoutResult
?
getBoundingBox
returns
Rect.fromLTRB(0.0, 0.0, 15.4, 33.0)
Rect.fromLTRB(15.4, 0.0, 32.6, 33.0)
Rect.fromLTRB(32.6, 0.0, 48.3, 33.0)
on a string like abc
, but obviously the real bounding box’s top of these charaters is not 0.prasanna
08/31/2025, 5:58 PMprasanna
09/01/2025, 8:57 AMmin
09/01/2025, 11:55 AM@Composable
to inject an output parameter of sorts at compile time via which composables build a composition. I suppose that ‘recomposition scopes’ emitted into the composer by composables somehow correspond to snapshots, and that once a recomposition scope has been invalidated because a state has changed, a rerun of the corresponding composable is scheduled. But where is the code that actually does this? My MainActivity
is a ComponentActivity
, I’ve had a quick look at the call graph that starts from the call to .setContent
in the onCreate
method but couldn’t identify whatever is orchestrating this chain of eventsHammad Qaiser
09/02/2025, 9:29 AMNestedScrollConnection
. More in 🧵Lukasz Kalnik
09/02/2025, 9:34 AMUiState
contains an action
property, which when set, should start an activity from the Composable. However on some devices the activity is started twice.
Code in 🧵Abhimanyu
09/02/2025, 2:32 PMTextFieldState
with the subsequent values emitted from the viewmodel.
val usernameState = rememberTextFieldState(initialUiState.username)
LaunchedEffect(usernameState) {
snapshotFlow { usernameState.text.toString() }.collectLatest {
loginViewModel.updateUsername(it)
}
}
Could anyone please help share how to solve this?