8 Key Updates in Compose Multiplatform 1.11.0 You Need to Know

Compose Multiplatform 1.11.0 has arrived, bringing a host of improvements that enhance the development experience across iOS, web, and desktop platforms. From more native text input on iOS to smarter UI testing and smoother web scrolling, this release focuses on performance and usability. In this article, we break down the eight most important changes that every developer should be aware of. Whether you're evaluating the update or planning your migration, these highlights will help you get the most out of Compose Multiplatform.

1. Native Text Input on iOS (Experimental)

One of the biggest requests from iOS developers has been a more native text input experience. Compose Multiplatform 1.11.0 delivers an experimental implementation built directly on top of UIView. This approach brings several user-facing improvements:

8 Key Updates in Compose Multiplatform 1.11.0 You Need to Know
Source: blog.jetbrains.com
  • Precise caret movement – no more jittery cursor behavior.
  • Native gestures and selection handles – familiar pinch-to-select and long-press actions.
  • System context menu – includes Autofill, Translate, and Search options.

To try it out, you opt in by configuring your text fields accordingly. The existing cross-platform text input remains the stable default, but for apps that prioritize native iOS feel, this experimental feature is a game-changer. Note: This is still experimental and subject to change, so test thoroughly in production contexts.

2. Concurrent Rendering Enabled by Default

Introduced as an opt-in feature in version 1.8.0, concurrent rendering is now turned on by default. This means rendering tasks are offloaded to a dedicated render thread without any extra configuration. The result is smoother animations and improved responsiveness, especially on complex UIs. You no longer need to manually enable this feature – just update to 1.11.0 and the performance gains are automatic. For those who relied on the old single-threaded behavior, you can still opt out if you encounter specific issues, but the default setting now gives you better performance out of the box.

3. Compose UI Testing v2: Predictable and Flexible

Testing on non-Android targets gets a significant upgrade with support for the v2 ComposeUiTest APIs. The key change is that the default dispatcher is now StandardTestDispatcher, making coroutines run in the order they are queued. This brings tests closer to production behavior and reduces flakiness. Additionally, v2 APIs accept an effectContext parameter, allowing you to pass a custom coroutine context – for instance, to override motion duration scale or inject your own test dispatcher. The previous APIs (runComposeUiTest, runSkikoComposeUiTest, and runDesktopComposeUiTest) are now deprecated in favor of their v2 counterparts. Migrate your test suites to take advantage of these improvements.

4. Smoother Scrolling on Web Targets

Scrolling performance on Compose for Web has often lagged behind native platforms due to inefficient touch processing. With 1.11.0, the touch handling pipeline has been substantially reworked to reduce latency and deliver a more fluid experience. The latest KotlinConf App web version demonstrates the improvements. Users will notice less stuttering and more responsive scroll actions, bringing the web experience closer to that of desktop and mobile. For full technical details and the list of fixes, refer to the CMP-9727 issue.

8 Key Updates in Compose Multiplatform 1.11.0 You Need to Know
Source: blog.jetbrains.com

5. Deprecation of Old Testing APIs

As part of the move to v2 testing, the original runComposeUiTest, runSkikoComposeUiTest, and runDesktopComposeUiTest functions are now deprecated. These will continue to work for the time being, but it's recommended to migrate to the new unified API. The deprecation is a step toward a more consistent testing experience across all targets. Check the migration guide in the official documentation for instructions on updating your test code.

6. How to Get Started with Compose Multiplatform 1.11.0

Updating is straightforward: bump your Compose Multiplatform dependency version to 1.11.0 in your build.gradle.kts or build.gradle file. For example:

composeMultiplatform = "1.11.0"

If you're new to Compose Multiplatform, head over to JetBrains' official site for tutorials and sample projects. The release notes contain the full changelog – review them for any breaking changes or additional configuration steps.

7. Additional Performance Improvements

Beyond the headline features, 1.11.0 includes a range of smaller but impactful optimizations. Memory consumption has been reduced in several scenarios, particularly when handling large lists. Animation performance on iOS has also seen incremental gains thanks to better frame scheduling. While not as flashy as the major features, these refinements contribute to a more polished overall experience.

8. What's Next for Compose Multiplatform

The Compose Multiplatform team is actively working on further iOS integration, including support for SwiftUI interoperability and more native components. Future releases are expected to stabilize the experimental native text input and expand web capabilities. Keep an eye on the JetBrains Kotlin blog and the GitHub releases page for upcoming announcements.

Compose Multiplatform 1.11.0 is a significant step forward, especially for iOS and web developers. Update your projects, explore the new features, and share your feedback with the community. For all the changes that didn't fit in this article, check the official release notes.

Tags:

Recommended

Discover More

2026's First Blockbuster Games: Three Titles Already Score 9/10, Setting a New StandardHow to Take a Stand Against the Revised GUARD Act: A Step-by-Step Guide10 Shocking Facts About Alaska’s 500-Meter Tsunami That No One Heard AboutHow to Swap Bitcoin for USDC Without Custody: A Step-by-Step Guide Using BoltzMINISFORUM M2 Mini PC: Entry-Level Model Now Shipping, M2 Pro Still on Hold