Open Lukaszz112 opened 9 months ago
Performance in the power saving mode sucks totally :). Not only the text fields. On my 12 mini FPS drops are terrible even in prod mode. And as i see on your clip, text fields jump in a default mode too, so the reason is not likely PS mode
@alexzhirkevich What can be the reason of the jumps, as I am also facing this type of issues in one of the projects?
Hello, @Lukaszz112! Thanks for submitting the issue. Unfortunately, I couldn't reproduce that. Could you please try to recreate that in a separate project from our template and link it here?
Upd. @jstarczewski, I'm sorry, I mentioned you wrong yesterday. But your example will help too if you're facing the same issue.
@mazunin-v-jb Hey, sorry for the late response. We were able to fix the problem. The cause was the SwiftUI code. Basically we spot a weird behaviour when we try to .ignoreSafeAreas
but the Compose Multiplatform UI is embedded in VStack
(called later container) with some sort of Bottom Bar on iOS. As the keyboard is showing/hiding seems like the Compose code container is sort of "squeezed" to "springs" (the same behaviour and similar case is visible on the video above). The fix was to move the Swift bottom bar as an overlay over compose container. Then when Keyboard shows nothing moves :)
I can try to recreate simple samples if you want :)
@jstarczewski It is good to have minimal reproducer of this problem. Thanks!
Can you please to do so?
Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.
Describe the bug When entering the text field in battery-saving mode, it behaves strangely, jumping and freezing a lot. However, after turning off this mode, everything works much smoother, albeit with slightly noticeable vibrations.
Affected platforms Select one of the platforms below:
Versions
Expected behavior I expected the text field to function smoothly without any erratic behavior or freezing, regardless of whether the device was in battery-saving mode or not.
https://github.com/JetBrains/compose-multiplatform/assets/93291505/30966fa2-c1ef-4822-8f4f-31f5edff1f53
Code snippet