probably, those unrelated composables are at the same level, so your canvas composable recomposes as well. Without having the full code is difficult to spot the issue. But based on what you told me, other composables recompose are making the canvas to recompose as well, because other composables state is read at the same level