Skip to content

Releases: JetBrains/compose-multiplatform

1.11.0-beta03

21 Apr 12:47
99f5ca5

Choose a tag to compare

1.11.0-beta03 Pre-release
Pre-release

Changes since 1.11.0-beta02

Features

Multiple Platforms

  • Implement drag-to-scroll in SelectionContainer. When the mouse pointer is dragged outside the element while selecting text, the text element will be scrolled accordingly. Note that this requires wrapping the content in a scrolling container/modifier, e.g. Modifier.verticalScroll #2979

Fixes

Multiple Platforms

  • Fix mouse-clicks being missed occasionally (typically when using Apple's Magic Mouse) #2975
  • Fix crash when pressing up/down keys in an open context menu #2976

iOS

  • (prerelease fix) Fix UINavigationBar safe area insets not included in WindowInsets.safeDrawing #2965
  • (prerelease fix) Fix an issue where Compose content may become stretched after screen rotation #2968
  • (prerelease fix) Fix SegmentFrequentTick and SegmentTick haptic feedbacks #2969

Desktop

Web

  • (prerelease fix) [iOS] Fix crash when using 'Fast delete': Cannot coerce value to an empty range: maximum -1 is less than minimum 0 #2964
  • (prerelease fix) Fix dragAndDropSource combined with clickable doesn't allow to start drag #2974

Components

Gradle plugin

org.jetbrains.compose version 1.11.0-beta03

Libraries

Library group Coordinates Based on Jetpack
Runtime org.jetbrains.compose.runtime:runtime*:1.11.0-beta03 Runtime 1.11.0-rc01
UI org.jetbrains.compose.ui:ui*:1.11.0-beta03 UI 1.11.0-rc01
Foundation org.jetbrains.compose.foundation:foundation*:1.11.0-beta03 Foundation 1.11.0-rc01
Material org.jetbrains.compose.material:material*:1.11.0-beta03 Material 1.11.0-rc01
Material3 org.jetbrains.compose.material3:material3*:1.11.0-alpha07 Material3 1.5.0-alpha17
Material3 Adaptive org.jetbrains.compose.material3.adaptive:adaptive*:1.3.0-alpha07 Material3 Adaptive 1.3.0-alpha10
Lifecycle org.jetbrains.androidx.lifecycle:lifecycle-*:2.11.0-alpha03 Lifecycle 2.11.0-alpha03
Navigation org.jetbrains.androidx.navigation:navigation-*:2.9.2 Navigation 2.9.7
Navigation3 org.jetbrains.androidx.navigation3:navigation3-*:1.1.0 Navigation3 1.1.0
Navigation Event org.jetbrains.androidx.navigationevent:navigationevent-compose:1.1.0-beta01 Navigation Event 1.1.0-rc01
Savedstate org.jetbrains.androidx.savedstate:savedstate*:1.4.0 Savedstate 1.4.0
WindowManager Core org.jetbrains.androidx.window:window-core:1.5.1 WindowManager 1.5.1

1.11.0-beta02

10 Apr 09:53
419f82c

Choose a tag to compare

1.11.0-beta02 Pre-release
Pre-release

Changes since 1.11.0-beta01

Migration Notes

Multiple Platforms

  • runComposeUiTest, runSkikoComposeUiTest, runDesktopComposeUiTest are deprecated in favor v2 versions #2919

Web

  • Kotlin 2.3.20 is required when using Compose Multiplatform with Kotlin/JS or Kotlin/Wasm #2918

Features

Multiple Platforms

  • Support v2 Compose UI Tests APIs on non-android targets which uses StandardTestDispatcher by default instead of UnconfinedTestDispatcher #2919
  • Support a customization of effectContext in Compose UI tests #2919

Fixes

Multiple Platforms

  • (prerelease fix) Fixed a path regression where PathMeasure.getSegment(..., startWithMoveTo = true) could produce incorrect results when reusing destination paths #2902
  • Ctrl+Home/Ctrl+End or Cmd+Home/Cmd+End shortcuts should now work correctly in text fields #2931

iOS

  • Fix an issue with scrolling when scrollable content is displayed in modal view controller #2883
  • (prerelease fix) Fix crash during triple tap on empty textfield with usingNativeTextInput flag enabled #2910
  • (prerelease fix) Fix crash after applying autocorrection change or keyboard suggestion in TextField when usingNativeTextInput flag is enabled #2921
  • Fix crash caused by the missing symbol UIWindowSceneGeometry on iOS 15 #2924
  • (prerelease fix) Fix regression with the outdated and wrongly inserted keyboard suggestions in BasicTextField(TextFieldValue) and BasicTextField(TextFieldState) #2925
  • (prerelease fix) Fix missing handles and caret in TextField on new line at the end of the text when usingNativeTextInput flag is enabled #2908
  • The structure of accessibility elements is now better aligned with Android semantic nodes #2916
  • Fix issues with accessibility elements not focusing at runtime #2916
  • (prerelease fix) Fix incorrect appearance of Autofill context menu item in the BasicTextField(TextFieldValue) and BasicTextField(TextFieldState) #2937
  • Fix ModalBottomSheetDialog content inset calculation #2849

Desktop

  • Fix memory leak in dialogs with non-default compose.layers.type setting #2864
  • [Accessibility] Improve performance of traversal groups with a large amount of children #2900
  • Clear some scheduled tasks on scene closure #2888
  • (prerelease fix) Bump Compose Hot Reload to 1.1.0-beta02 #5569

Web

  • Fix identity hash code not being correctly cached #2913
  • [iOS] Fix 'Fast delete' not working correctly for text containing emojis #2927

Components

Gradle plugin

org.jetbrains.compose version 1.11.0-beta02

Libraries

Library group Coordinates Based on Jetpack
Runtime org.jetbrains.compose.runtime:runtime*:1.11.0-beta02 Runtime 1.11.0-beta02
UI org.jetbrains.compose.ui:ui*:1.11.0-beta02 UI 1.11.0-beta02
Foundation org.jetbrains.compose.foundation:foundation*:1.11.0-beta02 Foundation 1.11.0-beta02
Material org.jetbrains.compose.material:material*:1.11.0-beta02 Material 1.11.0-beta02
Material3 org.jetbrains.compose.material3:material3*:1.11.0-alpha06 Material3 1.5.0-alpha16
Material3 Adaptive org.jetbrains.compose.material3.adaptive:adaptive*:1.3.0-alpha06 Material3 Adaptive 1.3.0-alpha09
Lifecycle org.jetbrains.androidx.lifecycle:lifecycle-*:2.11.0-alpha03 Lifecycle 2.11.0-alpha03
Navigation org.jetbrains.androidx.navigation:navigation-*:2.9.2 Navigation 2.9.7
Navigation3 org.jetbrains.androidx.navigation3:navigation3-*:1.1.0-rc01 Navigation3 1.1.0-rc01
Navigation Event org.jetbrains.androidx.navigationevent:navigationevent-compose:1.1.0-alpha01 Navigation Event 1.1.0-alpha01
Savedstate org.jetbrains.androidx.savedstate:savedstate*:1.4.0 Savedstate 1.4.0
WindowManager Core org.jetbrains.androidx.window:window-core:1.5.1 WindowManager 1.5.1

1.11.0-beta01

26 Mar 17:12
de9734a

Choose a tag to compare

1.11.0-beta01 Pre-release
Pre-release

Changes since 1.11.0-alpha04

Breaking Changes

iOS

  • Dialog and Popup container views are now located on a system transition view above the root view controller, but below modally presented view controllers. This may affect presentation of interop view controllers #2833

Fixes

Multiple Platforms

  • Remove check for arbitrary transforms in Matrix conversions due to incorrect detection of regular rotation. Now the behaviour is aligned with Android #2850

iOS

  • Fix an issue where Popup and Dialog may not close when clicked outside of their bounds #2815
  • Fix crash caused by mouse hover #2834
  • Fix an issue where the text cursor appeared in the wrong position when dragging it after selecting text #2833
  • Fix an issue where selection handles were not rendered inside the magnifier #2833
  • Fix an issue where popups and dialogs were displayed above a modally presented view controller #2833
  • Traversal groups now convert into an additional node in the accessibility hierarchy #2848
  • (prerelease fix) Fix issues with interop views addition and removal #2842
  • (prerelease fix) Fix an issue where system context menu items (Look Up, Translate, Search, etc.) are not presented #2837
  • Fix Cmd + C (copy) event handling for the selected text wrapped in SelectionContainer when using a hardware keyboard #2872
  • Fix the scrolling inertia issue when performing short scroll gestures #2851
  • Fix an issue where a fling may occur unexpectedly when lifting a finger #2851
  • (prerelease fix) Fix high memory consumption caused by the Compose container resizing when parallelRendering is enabled #2882

Desktop

  • [Windows] Alt-backspace now correctly performs undo action #2870
  • (prerelease fix) Bump Compose Hot Reload to 1.1.0-beta01 #5559

Web

  • Fix incorrect mouse click detection #2844
  • Fix an issue where wheel events reported incorrect mouse button state in Safari and Firefox #2844
  • The browser now handles additional cut, copy, and paste keyboard shortcuts, such as Shift+Insert #2871
  • Fix an issue where "fast delete" action removed characters one by one instead of deleting whole words in text fields on iOS #2875

Components

Gradle plugin

org.jetbrains.compose version 1.11.0-beta01

Libraries

Library group Coordinates Based on Jetpack
Runtime org.jetbrains.compose.runtime:runtime*:1.11.0-beta01 Runtime 1.11.0-beta01
UI org.jetbrains.compose.ui:ui*:1.11.0-beta01 UI 1.11.0-beta01
Foundation org.jetbrains.compose.foundation:foundation*:1.11.0-beta01 Foundation 1.11.0-beta01
Material org.jetbrains.compose.material:material*:1.11.0-beta01 Material 1.11.0-beta01
Material3 org.jetbrains.compose.material3:material3*:1.11.0-alpha05 Material3 1.5.0-alpha15
Material3 Adaptive org.jetbrains.compose.material3.adaptive:adaptive*:1.3.0-alpha06 Material3 Adaptive 1.3.0-alpha09
Lifecycle org.jetbrains.androidx.lifecycle:lifecycle-*:2.11.0-alpha02 Lifecycle 2.11.0-alpha02
Navigation org.jetbrains.androidx.navigation:navigation-*:2.9.2 Navigation 2.9.7
Navigation3 org.jetbrains.androidx.navigation3:navigation3-*:1.1.0-beta01 Navigation3 1.1.0-beta01
Navigation Event org.jetbrains.androidx.navigationevent:navigationevent-compose:1.1.0-alpha01 Navigation Event 1.1.0-alpha01
Savedstate org.jetbrains.androidx.savedstate:savedstate*:1.4.0 Savedstate 1.4.0
WindowManager Core org.jetbrains.androidx.window:window-core:1.5.1 WindowManager 1.5.1

1.10.3

19 Mar 14:01
25bafa5

Choose a tag to compare

Changes since 1.10.2

Fixes

Multiple Platforms

  • Remove check for arbitrary transforms in Matrix conversions due to incorrect detection of regular rotation. Now the behaviour is aligned with Android #2860

Components

Gradle plugin

org.jetbrains.compose version 1.10.3

Libraries

Library group Coordinates Based on Jetpack
Runtime org.jetbrains.compose.runtime:runtime*:1.10.3 Runtime 1.10.5
UI org.jetbrains.compose.ui:ui*:1.10.3 UI 1.10.5
Foundation org.jetbrains.compose.foundation:foundation*:1.10.3 Foundation 1.10.5
Material org.jetbrains.compose.material:material*:1.10.3 Material 1.10.5
Material3 org.jetbrains.compose.material3:material3*:1.10.0-alpha05 Material3 1.5.0-alpha08
Material3 Adaptive org.jetbrains.compose.material3.adaptive:adaptive*:1.3.0-alpha02 Material3 Adaptive 1.3.0-alpha03
Lifecycle org.jetbrains.androidx.lifecycle:lifecycle-*:2.10.0 Lifecycle 2.10.0
Navigation org.jetbrains.androidx.navigation:navigation-*:2.9.2 Navigation 2.9.7
Navigation3 org.jetbrains.androidx.navigation3:navigation3-*:1.0.0-alpha06 Navigation3 1.0.0
Navigation Event org.jetbrains.androidx.navigationevent:navigationevent-compose:1.0.1 Navigation Event 1.0.2
Savedstate org.jetbrains.androidx.savedstate:savedstate*:1.4.0 Savedstate 1.4.0
WindowManager Core org.jetbrains.androidx.window:window-core:1.5.1 WindowManager 1.5.1

1.11.0-alpha04

11 Mar 12:53
617eb5f

Choose a tag to compare

1.11.0-alpha04 Pre-release
Pre-release

Changes since 1.11.0-alpha03

Breaking Changes

Multiple Platforms

  • To decouple common Compose graphics APIs from direct Skia/Skiko types, non-Android Shader is now a dedicated Compose wrapper type. Since it's not an ABI-compatible change, you might need to update some libraries that use this API to newer, compatible versions. Migration: #2810
    • If you pass raw Skia/Skiko shaders into Compose APIs, wrap with SkShader.asComposeShader().
    • If you need low-level Skia/Skiko access from Compose Shader, use Shader.skiaShader extension.

Migration Notes

Multiple Platforms

  • Key.Home has been deprecated, as it has been incorrectly mapped to the keyboard "Home" key. Use Key.MoveHome instead #2801
  • androidx.compose.ui.graphics.NativePaint and androidx.compose.ui.graphics.NativeCanvas typealiases are deprecated, use direct references to native types instead #2802
  • Paint.asFrameworkPaint() was replaced with Paint.skiaPaint extension to avoid exposing a platform type into commonMain sourceset via typealias #2802
  • RenderEffect.asSkiaImageFilter() was replaced with RenderEffect.skiaImageFilter extension to avoid exposing a platform type into commonMain types #2809
  • Deprecate Canvas.nativeCanvas extension in favor of Canvas.skiaCanvas to avoid ambiguity #2809

Web

  • Kotlin 2.3.10 or newer is required to use Compose Multiplatform with Kotlin/Wasm target #2790

Features

Multiple Platforms

  • Update skia to m144 #2779

iOS

  • Adds an opt-in Native iOS Text Input mode for Compose BasicTextField (both TextFieldValue and TextFieldState) enabled via PlatformImeOptions.usingNativeTextInput(enabled) in iOS source set #2602
  • With the native iOS text input flag set to true, BasicTextField uses native UIKit editing and interaction, including: #2602
    • Native caret placement and movement (tap-to-place caret, spacebar caret movement, “ghost caret”)
    • Native magnifier
    • Native selection gestures (double-tap word selection, triple-tap paragraph selection) and iOS-like selection UI (region + handles)
    • Native context menu behavior is supported for both the legacy and the new context menu (isNewContextMenu = true) configurations.
    • Native context menu behavior when interacting with the caret, selection region, or selection handles
    • Native text field context menu actions (e.g. Translate, Look Up, Share) (not available without this mode)
    • Autocorrect / typo replacement support
    • Autofill support for text fields, including filling from saved passwords one field at a time
  • Support automatic sizing for Auto Layout–based views together with supporting explicit remeasurement via rememberUIKitInteropRemeasureRequester() + Modifier.remeasureRequester(...) with UIKitInteropRemeasureRequester.requestRemeasure() for propagating UIKit-side size changes to Compose #2797

Desktop

  • New compile-time warnings for invalid ui/menu composable mixing that previously failed only at runtime #2777

Web

  • Add isClearFocusOnMouseDownEnabled in ComposeViewportConfiguration to configure the focus behaviour on mouse press #2781

Gradle Plugin

  • Add a compatibility check for skiko libraries to ensure consistency #5541

Fixes

iOS

  • Fix traffic lights overlapping content on iPad by adopting the new iOS 26 LayoutRegion API #2555
  • The haptic feedback when selecting text now works closer to the way it does with iOS text fields #2786

Desktop

  • Correctly react to numpad arrows, NumPadPageUp, NumPadPageDown, NumPadHome and NumPadEnd keys in text fields #2800
  • (prerelease fix) Fixed a11y crash when focused element is removed #2803
  • Match key modifiers exactly (without ignoring the state of other modifiers) when determining the corresponding text field action/command. This also fixes inputting 'a' and 'z' diacritics (e.g. 'ą' and 'ż') in text fields on Windows #2804
  • Fix the condition for hiding the tooltip in a TooltipArea on a pointer-exit event while the pointer is still inside the area #2798
  • (prerelease fix) Fix black rectangle remaining after removing/hiding SwingPanel #2821
  • Some key shortcuts (e.g. shift-backspace, shift-delete on macOS) that previously didn't work in text fields now perform the correct action #2827

Web

  • (pre-release) Make canvas focused so it receives key events (e.g. ESC) #2796
  • Unified touch and pointer event handling for better consistency and performance on Web #2799
  • Fix Magic mouse behaviour in Safari and Firefox #2811

Components

Gradle plugin

org.jetbrains.compose version 1.11.0-alpha04

Libraries

Library group Coordinates Based on Jetpack
Runtime org.jetbrains.compose.runtime:runtime*:1.11.0-alpha04 Runtime 1.11.0-alpha06
UI org.jetbrains.compose.ui:ui*:1.11.0-alpha04 UI 1.11.0-alpha06
Foundation org.jetbrains.compose.foundation:foundation*:1.11.0-alpha04 Foundation 1.11.0-alpha06
Material org.jetbrains.compose.material:material*:1.11.0-alpha04 Material 1.11.0-alpha06
Material3 org.jetbrains.compose.material3:material3*:1.11.0-alpha04 Material3 1.5.0-alpha15
Material3 Adaptive org.jetbrains.compose.material3.adaptive:adaptive*:1.3.0-alpha06 Material3 Adaptive 1.3.0-alpha09
Lifecycle org.jetbrains.androidx.lifecycle:lifecycle-*:2.11.0-alpha01 Lifecycle 2.11.0-alpha01
Navigation org.jetbrains.androidx.navigation:navigation-*:2.9.2 Navigation 2.9.7
Navigation3 org.jetbrains.androidx.navigation3:navigation3-*:1.1.0-alpha04 Navigation3 1.1.0-alpha05
Navigation Event org.jetbrains.androidx.navigationevent:navigationevent-compose:1.1.0-alpha01 Navigation Event 1.1.0-alpha01
Savedstate org.jetbrains.androidx.savedstate:savedstate*:1.4.0 Savedstate 1.4.0
WindowManager Core org.jetbrains.androidx.window:window-core:1.5.1 WindowManager 1.5.1

1.10.2

05 Mar 11:16
25bafa5

Choose a tag to compare

Changes since 1.10.1

No Compose Multiplatform specific changes

Components

Gradle plugin

org.jetbrains.compose version 1.10.2

Libraries

Library group Coordinates Based on Jetpack
Runtime org.jetbrains.compose.runtime:runtime*:1.10.2 Runtime 1.10.4
UI org.jetbrains.compose.ui:ui*:1.10.2 UI 1.10.4
Foundation org.jetbrains.compose.foundation:foundation*:1.10.2 Foundation 1.10.4
Material org.jetbrains.compose.material:material*:1.10.2 Material 1.10.4
Material3 org.jetbrains.compose.material3:material3*:1.10.0-alpha05 Material3 1.5.0-alpha08
Material3 Adaptive org.jetbrains.compose.material3.adaptive:adaptive*:1.3.0-alpha02 Material3 Adaptive 1.3.0-alpha03
Lifecycle org.jetbrains.androidx.lifecycle:lifecycle-*:2.10.0-beta01 Lifecycle 2.10.0
Navigation org.jetbrains.androidx.navigation:navigation-*:2.9.2 Navigation 2.9.7
Navigation3 org.jetbrains.androidx.navigation3:navigation3-*:1.0.0-alpha06 Navigation3 1.0.0
Navigation Event org.jetbrains.androidx.navigationevent:navigationevent-compose:1.0.1 Navigation Event 1.0.2
Savedstate org.jetbrains.androidx.savedstate:savedstate*:1.4.0 Savedstate 1.4.0
WindowManager Core org.jetbrains.androidx.window:window-core:1.5.1 WindowManager 1.5.1

1.11.0-alpha03

25 Feb 13:10

Choose a tag to compare

1.11.0-alpha03 Pre-release
Pre-release

Changes since 1.11.0-alpha02

Migration Notes

Multiple Platforms

  • navigation-runtime, navigation-common no longer provide androidx.collection as an api transitive dependency. If your project doesn't compile with unresolved androidx.collection... classes add implementation("androidx.collection:collection:1.5.0"). This change is required to avoid differences with the original Jetpack libraries and allow reusing the same code without additional changes needed #2749
  • Kotlin 2.3 is required for native and web platforms #2755

iOS

  • parallelRendering flag now enabled by default #2732

Features

iOS

  • Add support for tvOS Siri Remote button events (Select, Menu, Play/Pause) #2717

Desktop

  • singleWindowApplication content's receiver now subclasses ApplicationScope too, allowing to programmatically exit the app #2703

Fixes

iOS

  • Fix crash when manually posting UIKeyboardWillHideNotification without userInfo #2713
  • Fix an ability to use scrollsToTop for native UIScrollViews #2705
  • (prerelease fix) Fix an issue where manually overriding the user interface style does not propagate properly to the LocalSystemTheme #2735
  • Fix crash in MetalRedrawer that occurs when Popup or Dialog box opens and closes quickly #2756
  • Fix hit test for Accessibility Elements #2760
  • Fix crashes when parallelRendering is enabled #2732
  • Fix issues with custom context menu items on iOS 15 or earlier #2771

Desktop

  • Fix accessibility focus continuing to highlight a removed element #2695
  • [macOS] Fix Wubi input for (Basic)TextField(TextFieldValue) #2722
  • [macOS, accessibility] Fix VoiceOver sometimes "clicking" the wrong button when a button click is triggered by the user #2720
  • #2680
  • Fix TextField accessibility issue where contentDescription was ignored by screen readers (VoiceOver). TextField now properly uses contentDescription as the accessible name/label, making forms usable with assistive technologies #2680
  • The coroutine context of launchApplication and awaitApplication is now correctly used in windows and dialogs of the application #2742
  • (prerelease fix) Fix SwingPanel not being visible at all #2751
  • Fix an issue with "Pinyin - Simplified" input in BasicTextField(TextFieldState) when the temporary (composed) english text was not removed when the composition is committed #2763
  • Fix incorrect pointer Enter/Move events sometimes being sent immediately following the mouse pointer exiting the compose scene #2750
  • (prerelease fix) Bump Compose Hot Reload to 1.1.0-alpha05 #5530

Web

  • Adjust HTML hierarchy for proper interop container location outside the shadow DOM #2710
  • Fix mouse wheel scrolling on web by accounting for screen density #2724
  • Ignore duplicate mouse events following touch events on web to avoid unintended clicks #2741
  • Fix Apple Magic mouse behavior #2748
  • Fix too early tap detection on web during scrolling #2753
  • Fix sudden scroll stops during fast gestures #2759
  • Support cursor control using space bar sliding gesture on Android Web #2762
  • Fix scrolling sudden stops or speed-ups in web apps #2764
  • Improvements of the Web scroll behavior #2766

Components

Gradle plugin

org.jetbrains.compose version 1.11.0-alpha03

Libraries

Library group Coordinates Based on Jetpack
Runtime org.jetbrains.compose.runtime:runtime*:1.11.0-alpha03 Runtime 1.11.0-alpha05
UI org.jetbrains.compose.ui:ui*:1.11.0-alpha03 UI 1.11.0-alpha05
Foundation org.jetbrains.compose.foundation:foundation*:1.11.0-alpha03 Foundation 1.11.0-alpha05
Material org.jetbrains.compose.material:material*:1.11.0-alpha03 Material 1.11.0-alpha05
Material3 org.jetbrains.compose.material3:material3*:1.11.0-alpha03 Material3 1.5.0-alpha14
Material3 Adaptive org.jetbrains.compose.material3.adaptive:adaptive*:1.3.0-alpha05 Material3 Adaptive 1.3.0-alpha08
Lifecycle org.jetbrains.androidx.lifecycle:lifecycle-*:2.10.0-alpha08 Lifecycle 2.10.0
Navigation org.jetbrains.androidx.navigation:navigation-*:2.9.2 Navigation 2.9.7
Navigation3 org.jetbrains.androidx.navigation3:navigation3-*:1.1.0-alpha03 Navigation3 1.1.0-alpha04
Navigation Event org.jetbrains.androidx.navigationevent:navigationevent-compose:1.0.1 Navigation Event 1.0.2
Savedstate org.jetbrains.androidx.savedstate:savedstate*:1.4.0 Savedstate 1.4.0
WindowManager Core org.jetbrains.androidx.window:window-core:1.5.1 WindowManager 1.5.1

1.10.1

10 Feb 15:06
25bafa5

Choose a tag to compare

Changes since 1.10.0

Fixes

Multiple Platforms

  • Improved the deprecation message for compose.materialIconsExtended to explain that the artifact is pinned to version 1.7.3 and suggest migration to Material Symbols #5521

iOS

  • Fix possible text styles cache corruption (text color is sometimes randomly black) #2630
  • Fix an issue where fonts and icons may become corrupted #2693
  • Fix an issue where the first frame may not be rendered on Compose container appearance #2692
  • Fix the crash that may occur when the Compose container disposes #2691

Web

  • Fix Ctrl/Cmd + C (copy) event handling for the selected text wrapped in SelectionContainer #2701
  • Fix mouse wheel scrolling on web by accounting for screen density #2725

Resources

  • Fixes an issue where web resources failed to load when calling the Cache Storage API with unsupported protocols (e.g., vscode-webview: in VS Code webviews) #5518

Components

Gradle plugin

org.jetbrains.compose version 1.10.1

Libraries

Library group Coordinates Based on Jetpack
Runtime org.jetbrains.compose.runtime:runtime*:1.10.1 Runtime 1.10.2
UI org.jetbrains.compose.ui:ui*:1.10.1 UI 1.10.2
Foundation org.jetbrains.compose.foundation:foundation*:1.10.1 Foundation 1.10.2
Material org.jetbrains.compose.material:material*:1.10.1 Material 1.10.2
Material3 org.jetbrains.compose.material3:material3*:1.10.0-alpha05 Material3 1.5.0-alpha08
Material3 Adaptive org.jetbrains.compose.material3.adaptive:adaptive*:1.3.0-alpha02 Material3 Adaptive 1.3.0-alpha03
Lifecycle org.jetbrains.androidx.lifecycle:lifecycle-*:2.10.0-alpha06 Lifecycle 2.10.0
Navigation org.jetbrains.androidx.navigation:navigation-*:2.9.2 Navigation 2.9.7
Navigation3 org.jetbrains.androidx.navigation3:navigation3-*:1.0.0-alpha06 Navigation3 1.0.0
Navigation Event org.jetbrains.androidx.navigationevent:navigationevent-compose:1.0.1 Navigation Event 1.0.2
Savedstate org.jetbrains.androidx.savedstate:savedstate*:1.4.0 Savedstate 1.4.0
WindowManager Core org.jetbrains.androidx.window:window-core:1.5.1 WindowManager 1.5.1

1.11.0-alpha02

27 Jan 14:18
89f6aea

Choose a tag to compare

1.11.0-alpha02 Pre-release
Pre-release

Changes since 1.11.0-alpha01

Known Issues

Desktop

Migration Notes

iOS

Web

  • Renamed WebElementView to HtmlElementView to better reflect its HTML-specific purpose #2636
  • WebElementView has been deprecated in favor of HtmlElementView #2641

Navigation

  • A deprecated suspend fun Window.bindToNavigation method has been removed #2675

Features

iOS

  • Added a new ComposeUIView API enabling Compose embedding in view hierarchy #2589
  • Add ability to adjust isClearFocusOnMouseDownEnabled in the configure lambda when creating Compose components #2644
  • Support semantics for links in text #2649
  • Popups and Dialogs now use the same interface orientation and status bar behaviour as the root view controller on the window #2686

Desktop

  • Cleanup old unpacked binaries from ~/.skiko (this folder is used if the application is launched via ./gradlew run). Use skiko.data.cleanup.days to configure the retention period in days #2645
  • It is now possible to configure the mouse-wheel propagation-to-parent behavior per ComposePanel via ComposePanel.redispatchUnconsumedMouseWheelEvents flag #2659
  • [Linux] Improve window dragging experience when using WindowDraggableArea on Linux with JetBrains Runtime #2674
  • (prerelease fix) Compose 1.11 pre-release versions come with pre-release versions of Compose Hot Reload 1.1 now #5502

Navigation

  • Add unveilIn and veilOut animations to default iOS transition specs in Navigation3 #2655

Fixes

Multiple Platforms

  • Fixed exception thrown when using Bullets with Em units #2667
  • Fix window insets consumption in system window insets padding modifiers #2665

iOS

  • Fix ability to place Compose inside the SwiftUI Form view #2589
  • Fix the traversal order of accessibility nodes where a parent node may follow its child node #2643
  • Fix crash when closing popup simultaneously with back navigation #2651
  • Fix the issue where the keyboard may focus on the wrong container and become stuck #2652
  • Fix the crash that may occur when the Compose container disposes #2672
  • Fix issue where the first frame may not be rendered on Compose container appearance #2683
  • Fix an issue where fonts and icons may become corrupted #2684

Desktop

  • [A11y, Windows] Fixed the accessibility hierarchy, allowing NVDA traversal commands to work correctly #2637
  • [A11y] Correctly report focused status of a newly created, but already focused, node #2637
  • [A11y] Correctly re-report focused state of focused node when the Compose container becomes focused, such as when the window is brought to the foreground #2637
  • (prerelease fix) [Windows] Don't fallback to Software rendering on some non-DX12 compatible GPUs (for example, Parallels Virtual GPU) #2645
  • org.jetbrains.compose.ui:ui-test no longer depends on com.google.truth:truth #2648
  • [macOS] Fixed Crash: Failed assertion when MTLTextureDescriptor is greater than the maximum allowed size #2669
  • Fixed ComposePanel drawing the background that was set on it #2670
  • (prerelease fix) Fixed VoiceOver highlighting the entire Compose content and calling it "JavaAxIgnore" when using a composable Window #2678
  • Fixed JPopupContextMenuRepresentation to correctly recreate the menu when the createMenu argument changes #2702

Web

  • Fix Ctrl/Cmd + C (copy) event handling for the selected text wrapped in SelectionContainer #2700

Resources

  • Fixes an issue where web resources failed to load when calling the Cache Storage API with unsupported protocols (e.g., vscode-webview: in VS Code webviews) #5516

Gradle Plugin

  • Corrected version validation for MacOS CFBundleVersion. The major version may now be 0 #5504

Components

Gradle plugin

org.jetbrains.compose version 1.11.0-alpha02

Libraries

Library group Coordinates Based on Jetpack
Runtime org.jetbrains.compose.runtime:runtime*:1.11.0-alpha02 Runtime 1.11.0-alpha03
UI org.jetbrains.compose.ui:ui*:1.11.0-alpha02 UI 1.11.0-alpha03
Foundation org.jetbrains.compose.foundation:foundation*:1.11.0-alpha02 Foundation 1.11.0-alpha03
Material org.jetbrains.compose.material:material*:1.11.0-alpha02 Material 1.11.0-alpha03
Material3 org.jetbrains.compose.material3:material3*:1.11.0-alpha02 Material3 1.5.0-alpha12
Material3 Adaptive org.jetbrains.compose.material3.adaptive:adaptive*:1.3.0-alpha04 Material3 Adaptive 1.3.0-alpha06
Lifecycle org.jetbrains.androidx.lifecycle:lifecycle-*:2.10.0-alpha08 Lifecycle 2.10.0
Navigation org.jetbrains.androidx.navigation:navigation-*:2.9.1 Navigation 2.9.4
Navigation3 org.jetbrains.androidx.navigation3:navigation3-*:1.1.0-alpha02 Navigation3 1.1.0-alpha02
Navigation Event org.jetbrains.androidx.navigationevent:navigationevent-compose:1.0.0 Navigation Event 1.0.1
Savedstate org.jetbrains.androidx.savedstate:savedstate*:1.4.0 Savedstate 1.4.0
WindowManager Core org.jetbrains.androidx.window:window-core:1.5.1 WindowManager 1.5.1

1.10.0

13 Jan 13:07
ed8a2c1

Choose a tag to compare

Changes since 1.9.3

See also What's new.

Highlights

Multiple Platforms

  • androidx.compose.ui.tooling.preview.Preview annotation is now available from commonMain source set #2424

Desktop

  • Compose Hot Reload Gradle plugin is bundled with the Compose Gradle plugin and is enabled for Kotlin version 2.1.20 or higher (no need to configure it separately) #5444

Navigation

  • Provide required NavigationEventDispatcherOwner for a correct Navigation3 support #2382

Breaking Changes

iOS

  • Align @Composable attribute in WindowInsets.Companion.captionBar to other platforms #2258

Migration Notes

Multiple Platforms

  • The pre‑1.7 workaround in the common PopupProperties/DialogProperties constructors (annotated Deprecated(HIDDEN) since 1.7) has been removed. This change may formally affect binary compatibility. Although we are not aware of concrete cases, if your project depends on third‑party libraries that reference this constructor, please update those dependencies to versions compatible with this release #2303
  • Kotlin 2.2 is required for native and web platforms #2357
  • Remove experimental annotation from usePlatformInsets, useSoftwareKeyboardInset and scrimColor in DialogProperties #2495
  • Remove experimental annotation from usePlatformDefaultWidth, usePlatformInsets in PopupProperties #2495
  • Deprecation level of Popup overloads without PopupProperties parameter changed from WARNING to ERROR #2495
  • widgets-gallery sample has been removed in favor of the interactive API reference #5365
  • Deprecate org.jetbrains.compose.ui.tooling.preview.Preview annotation in favor of androidx.compose.ui.tooling.preview.Preview to reduce variety of Preview annotations #5453
  • Dependency aliases in Gradle plugin (e.g. compose.ui) are now deprecated. Use provided direct artifact coordinates and add them to the version catalog #5462

iOS

Desktop

  • Deprecate androidx.compose.desktop.ui.tooling.preview.Preview annotation in favor of androidx.compose.ui.tooling.preview.Preview to reduce variety of Preview annotations #2474
  • Removed IntelliJ plugin sample, please refer to Jewel documentation instead #5368

Features

Multiple Platforms

  • Update skia to m138 (see release notes) #2304
  • Provide LocalLifecycleOwner inside runComposeUiTest by default #2400

iOS

  • Add support for WindowInsetsRulers #2258
  • Support automatic scrolling for Full Keyboard Access #2222
  • Support custom menu items for text context menu #2324
  • Add API to configure UIResponder.inputView with PlatformImeOptions #2350
  • Add API to configure UIResponder.inputAccessoryView with PlatformImeOptions #2350
  • Add API to configure UITextInputTraits.writingToolsBehavior with PlatformImeOptions #2435
  • Add support for self-sizing of UIKit interop views in Compose #2485
  • Add experimental UIKitInteropProperties.placedAsOverlay flag, which allows to place interop views above the Compose canvas. This allows interop views with a transparent background or shader effect to be used #2501

Desktop

  • Added modalityType parameter to DialogWindow() #2300
  • The Compose entry points on the desktop (ComposeWindow, ComposePanel and ImageComposeScene) now expose val semanticsOwners: Collection<SemanticsOwner> #2358
  • Experimental -Dskiko.gpu.resourceCacheLimit VM property is introduced to limit GPU resource cache used for one window (default is 256M) #2422

Web

  • Esc button calls back navigation event on the web now #2499

Resources

  • Add setResourceReaderAndroidContext to configure Android context in cases when a provider initialization is not available #5434

Lifecycle

  • Publish multiplatform lifecycle-viewmodel-navigation3 library #2476

Navigation

  • Basic support of the navigation3 library #2436
  • Published org.jetbrains.compose.material3.adaptive:adaptive-navigation3 library #2516
  • Add a new configuration option in ComposeUIViewController to set end-edge gestures behavior #2519

HTML

  • Add support of important keyword for CSS properties #5439

Fixes

Multiple Platforms

  • Fix application of baselineShift parameter in text layout #2304
  • Fix setting lineHeight to 0 in text layout #2304
  • Align roundToPx() behavior between platforms: NaN value produces 0 instead of IllegalArgumentException on non-JVM platforms now #2526
  • Added previously missing ExperimentalComposeUiApi annotation to platform-specific DragAndDropTransferData, DragAndDropEvent and ClipEntry constructors on Desktop and Web. Working with these APIs already requires this annotation due to types of parameters, so it wasn't supposed to be marked as "stable" yet. You can follow CMP-7624 to track the updates about finalizing the shape of these APIs #2538
  • Fixed LocalInputModeManager.current.inputMode not being reset between tests #2548
  • Fix crash when selecting text that only contains inline content #2600
  • Fix possible corruption of the layout nodes tree #2611

iOS

  • Fix incorrect behavior of WindowInsets.displayCutout in different interface orientations #2301
  • Fix incorrect behavior of WindowInsets.displayCutout on iPad #2301
  • Fix the ability to use UIKitViewController inside Popups and Dialogs #2270
  • Fix Accessibility announcing the old state of component #2327
  • Align the semantics of TextFields with iOS text inputs #2331
  • Clear TextField focus when another view becomes first responder #2337
  • Fix crash when parallelRendering is enabled #2448
  • Fix text context menu interaction on Popups and Dialogs #2434
  • Fix crash when dragging two Scrollable components with two fingers [#2456](https://github.com/JetBrains/compose-multiplatform...
Read more