compose-multiplatform icon indicating copy to clipboard operation
compose-multiplatform copied to clipboard

Glitch in navigation between Compose and Swift UI

Open GuilhE opened this issue 2 years ago • 4 comments

Describe the bug Glitch in navigation between Compose and Swift UI in a form of vertical white line on the device (simulator seems ok). Navigation it's handled natively on iOS side. All compose screens are inside UIViewControllerRepresentable.

Compose > Compose ✅ Compose > Swift UI ✅ Swift UI > Compose 🐛

Affected platforms

  • iOS (device)

Versions

  • Kotlin version: 1.9.20
  • Compose Multiplatform version: 1.5.11 (then I've tested with 1.5.10 and it also has it)
  • OS version(s) (required for Desktop and iOS issues): iphone 13 mini iOS 17.1.1
  • OS architecture (x86 or arm64): arm64

To Reproduce Steps and/or the code snippet to reproduce the behavior:

  1. checkout https://github.com/GuilhE/Expressus
  2. run iosApp
  3. enter in Swift_UI screen
  4. go back

Expected behavior No glitch

Screenshots

https://github.com/JetBrains/compose-multiplatform/assets/2677139/32379b90-08cf-4408-b13f-a1629690a8a6

Possible related https://github.com/JetBrains/compose-multiplatform/issues/3492?

GuilhE avatar Nov 24 '23 16:11 GuilhE

Thank you for submitting, we will take a look.

mazunin-v-jb avatar Nov 27 '23 13:11 mazunin-v-jb

any news version 1.6.0

hoangchungk53qx1 avatar Dec 25 '23 10:12 hoangchungk53qx1

Tested, still happening with:

kotlin = "1.9.22"
gradleComposeMultiplatform = "1.6.0-beta01"
composeMultiplatformCompiler = "1.5.8-beta01"

GuilhE avatar Jan 25 '24 11:01 GuilhE

Tested, still happening with:

kotlin = "1.9.22"
gradleComposeMultiplatform = "1.6.0-rc01"
composeMultiplatformCompiler = "1.5.8.1-beta02"

GuilhE avatar Feb 14 '24 20:02 GuilhE

Tested, still happening with:

kotlin = "1.9.23"
gradleComposeMultiplatform = "1.6.1"
composeMultiplatformCompiler = "1.5.10.1"

GuilhE avatar Apr 03 '24 16:04 GuilhE

It's a visual glitch of the compositor services in iOS, that don't properly synchronise internal at-moment state of CATransaction responsible for the animation of CAMetalLayer frame and CAMetalDrawable presentation into this layer.

I'll keep my eyes on it to see if any solution arises, but for now it seems like something we can not fix.

elijah-semyonov avatar Apr 04 '24 07:04 elijah-semyonov

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.

okushnikov avatar Jul 14 '24 15:07 okushnikov