Skip to content

Releases: JetBrains/compose-multiplatform

1.12.0-beta01

1.12.0-beta01 Pre-release
Pre-release

Choose a tag to compare

@jb-compose-bot jb-compose-bot released this 30 Jun 12:18
487ad0d

Changes since 1.12.0-alpha02

Migration Notes

Multiple Platforms

  • Deprecation level of NativeCanvas, NativePaint typealiases and related methods has been changed to ERROR #3127

Features

Multiple Platforms

  • Support LayerOutsets to GraphicsLayer & Modifier.graphicsLayer which can be used to increase the visual bounds of the layer beyond its measured size. This can be used to avoid the implicit clipToBounds behavior when the layer is promoted to an offscreen buffer #3144
  • Support MeshGradientPainter in Modifier.paint #3143

iOS

  • Support VerbatimTtsAnnotation and LocaleList attributes in accessibility VoiceOver #3145

Desktop

Fixes

Multiple Platforms

  • ComposeUiTest idle handling (waitForIdle/awaitIdle/runOnIdle) now matches Android: idleness is reached once composition, measure, and layout have settled (a pending draw is still flushed before returning). As a result, hasPendingWork() reflects composition/measure/layout state, and with mainClock.autoAdvance = false waiting now settles pending measure/layout #3108
  • Fix crash in method setComposingRegion when calling it with inverted or invalid region #3112

iOS

  • ViewModel now receives onCleared call when Compose Container is deallocated #3118
  • Fix incorrect frames order during high load rendering #3122
  • Fix swipe-back gesture conflict with horizontally scrollable components like HorizontalPager #3116

Desktop

  • (prerelease fix) Fixed getMinimumSize and getMaximumSize in ComposePanel to not assume UnspecifiedDimension by default #3114
  • Fixed the native keyCode for Key.NumPadDot to the correct KeyEvent.VK_DECIMAL #3142
  • Fixed LayoutCoordinates conversion to window/screen space in popups/dialogs with compose.layers.type=WINDOW #3154

Web

  • Added precise trackpad gesture detection in Chrome via heuristic methods #3123
  • Deliver both scroll axes in wheel events (fix diagonal scroll) #3147
  • Web: retry loading fallback fonts in case of network errors #3152

Resources

  • Support BCP 47 script (values-b+sr+Latn, values-b+zh+Hans) and numeric region (values-b+es+419) qualifiers, including multi-segment locales and trailing theme/density qualifiers, in commonMain resource folders #5582
  • Web: fixed a app crash when a resource fetch is failed #5627

Gradle Plugin

  • Add clear error message if JS browser tests configuration for Compose UI is invalid (doesn't have declared an executable binary) #5628

Components

Gradle plugin

org.jetbrains.compose version 1.12.0-beta01

Libraries

Library group Coordinates Based on Jetpack
Runtime org.jetbrains.compose.runtime:runtime*:1.12.0-beta01 Runtime 1.12.0-beta01
UI org.jetbrains.compose.ui:ui*:1.12.0-beta01 UI 1.12.0-beta01
Foundation org.jetbrains.compose.foundation:foundation*:1.12.0-beta01 Foundation 1.12.0-beta01
Material org.jetbrains.compose.material:material*:1.12.0-beta01 Material 1.12.0-beta01
Material3 org.jetbrains.compose.material3:material3*:1.12.0-alpha03 Material3 1.5.0-alpha22
Material3 Adaptive org.jetbrains.compose.material3.adaptive:adaptive*:1.3.0-beta02 Material3 Adaptive 1.3.0-beta02
Lifecycle org.jetbrains.androidx.lifecycle:lifecycle-*:2.11.0-rc01 Lifecycle 2.11.0
Navigation org.jetbrains.androidx.navigation:navigation-*:2.10.0-alpha02 Navigation 2.10.0-alpha05
Navigation3 org.jetbrains.androidx.navigation3:navigation3-*:1.2.0-alpha02 Navigation3 1.2.0-alpha04
Navigation Event org.jetbrains.androidx.navigationevent:navigationevent-compose:1.1.0 Navigation Event 1.1.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.12.0-alpha02

1.12.0-alpha02 Pre-release
Pre-release

Choose a tag to compare

@jb-compose-bot jb-compose-bot released this 16 Jun 13:29
14eda19

Changes since 1.12.0-alpha01

Migration Notes

Desktop

  • If your ComposePanel, ComposeWindow or ComposeDialog content can not be measured in infinite constraints (e.g. Modifier.verticalScroll) on a certain axis, you should provide a fixed size for that axis by calling ComposePanel.setPreferredSize with a Dimension that has a fixed size (on that axis) #3055

Features

iOS

  • Add the 'Select' item on the context menu for the text fields #3081
  • Add NSLocale.toComposeLocale() API to create Locale from platform NSLocale #3103

Desktop

  • It is now possible to control the way ComposePanel, ComposeWindow and ComposeDialog compute their minimum (only ComposePanel), preferred and maximum (only ComposePanel) sizes, by setting the corresponding property to a Dimension with a special UNSPECIFIED_DIMENSION_VALUE on the axis that should be determined by the content #3055
  • The default ProGuard version is set to 7.8.0 #5613
  • (prerelease fix) Bump Compose Hot Reload to 1.2.0-alpha01 #5613

Web

  • Noto fonts is being loaded automatically for unresolved symbols on Web #3010

Fixes

Multiple Platforms

  • Fix DatePickerDialog's confirmButton and dismissButton display order on iOS, Desktop, Kotlin/JS and Kotlin/Wasm not consistent with Material Design guidance #3048
  • Fixed a deep bug in matrix computation which caused pointer hit-paths to not be computed correctly sometimes, leading to elements that could not be interacted with via the mouse or touch #3053
  • Fixed a crash in RTL text cursor positioning when paragraphs contain newlines followed by emojis or combining marks #3056

iOS

  • Fix application build when using old Xcode 16 SDK #3054
  • Fix an issue where the Compose does not receive key events when initially created #3066
  • Fix issue when BasicTextField does not show context menu after long press #3080
  • Fix symbols duplication on keyboard paste hotkeys #3067
  • Focusable nodes inside merged semantics remain focusable #3089
  • Fix content jump at the beginning of a swipe back gesture #3101

Web

  • Fix an unexected crash in A11Y: Node $id not found #3057
  • Fixed pointer state remaining active when the browser cancels a pointer via pointercancel (system gestures, palm rejection, device disconnect, etc.) #3036

Resources

  • Fix an issue when resource loading might be cancelled and UI became empty #5617

Components

Gradle plugin

org.jetbrains.compose version 1.12.0-alpha02

Libraries

Library group Coordinates Based on Jetpack
Runtime org.jetbrains.compose.runtime:runtime*:1.12.0-alpha02 Runtime 1.12.0-alpha03
UI org.jetbrains.compose.ui:ui*:1.12.0-alpha02 UI 1.12.0-alpha03
Foundation org.jetbrains.compose.foundation:foundation*:1.12.0-alpha02 Foundation 1.12.0-alpha03
Material org.jetbrains.compose.material:material*:1.12.0-alpha02 Material 1.12.0-alpha03
Material3 org.jetbrains.compose.material3:material3*:1.12.0-alpha02 Material3 1.5.0-alpha20
Material3 Adaptive org.jetbrains.compose.material3.adaptive:adaptive*:1.3.0-beta02 Material3 Adaptive 1.3.0-beta02
Lifecycle org.jetbrains.androidx.lifecycle:lifecycle-*:2.11.0-beta02 Lifecycle 2.11.0-beta02
Navigation org.jetbrains.androidx.navigation:navigation-*:2.10.0-alpha02 Navigation 2.10.0-alpha05
Navigation3 org.jetbrains.androidx.navigation3:navigation3-*:1.2.0-alpha01 Navigation3 1.2.0-alpha03
Navigation Event org.jetbrains.androidx.navigationevent:navigationevent-compose:1.1.0 Navigation Event 1.1.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.11.1

Choose a tag to compare

@jb-compose-bot jb-compose-bot released this 02 Jun 11:38
38f6fc6

Changes since 1.11.0

Fixes

iOS

  • Fix element selection with Full Keyboard Access #3043

Web

  • Fix an unexpected crash in A11Y: Node $id not found #3065

Components

Gradle plugin

org.jetbrains.compose version 1.11.1

Libraries

Library group Coordinates Based on Jetpack
Runtime org.jetbrains.compose.runtime:runtime*:1.11.1 Runtime 1.11.2
UI org.jetbrains.compose.ui:ui*:1.11.1 UI 1.11.2
Foundation org.jetbrains.compose.foundation:foundation*:1.11.1 Foundation 1.11.2
Material org.jetbrains.compose.material:material*:1.11.1 Material 1.11.2
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-beta01 Lifecycle 2.11.0-beta01
Navigation org.jetbrains.androidx.navigation:navigation-*:2.9.2 Navigation 2.9.7
Navigation3 org.jetbrains.androidx.navigation3:navigation3-*:1.1.1 Navigation3 1.1.1
Navigation Event org.jetbrains.androidx.navigationevent:navigationevent-compose:1.1.0 Navigation Event 1.1.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.12.0-alpha01

1.12.0-alpha01 Pre-release
Pre-release

Choose a tag to compare

@jb-compose-bot jb-compose-bot released this 19 May 13:57
7701ef2

Changes since 1.11.0

Migration Notes

Desktop

  • The background parameter of SwingPanel has been deprecated. Instead set the background manually in the factory method. There's a new (experimental) Color.toAwtColor() function to convert Compose color objects to AWT ones #3024

Features

Multiple Platforms

  • Update Skia to m148 #3028
  • Add blockPointerInputOutside flag to PopupProperties to support not-blocking pointer inputs outside of focusable Popups #2992

iOS

  • Support LiveRegion semantics in Accessibility #2944
  • The selection handles now match the style of iOS #2991

Desktop

  • The parent AWT window of a composition is now available via LocalAwtWindow.current #3007
  • Implemented a new, experimental, WindowState API #2938

Web

Navigation

  • Improved iOS specific default navigation transactions in Nav2 #3023
  • Web and Desktop default navigation transactions are set to None in Nav2 #3023

Fixes

iOS

  • Fix a conflict with external bundled Skia libraries #3008
  • Fix incorrect scaling and positioning of interop UIKitView / UIKitViewController element when LocalDensity is modified. This change does not affect scaling of factory content: UIView / UIViewController #3037
  • Fix issue where BasicTextField reported inconsistent changes between Android and iOS #2990
  • Fix issue where a BasicTextField with InputTransformation may use the incorrect internal text state #2990
  • Fix elements selection with Full Keyboard Access #3038

Desktop

  • [ComposePanel in Swing rendering mode] Fix Metal offscreen rendering crash when drawing to a Software renderer #3008
  • Fix SwingPanel size not scaling according to LocalDensity. Note that this doesn't scale the Swing content of the SwingPanel #3033

Components

Gradle plugin

org.jetbrains.compose version 1.12.0-alpha01

Libraries

Library group Coordinates Based on Jetpack
Runtime org.jetbrains.compose.runtime:runtime*:1.12.0-alpha01 Runtime 1.12.0-alpha02
UI org.jetbrains.compose.ui:ui*:1.12.0-alpha01 UI 1.12.0-alpha02
Foundation org.jetbrains.compose.foundation:foundation*:1.12.0-alpha01 Foundation 1.12.0-alpha02
Material org.jetbrains.compose.material:material*:1.12.0-alpha01 Material 1.12.0-alpha02
Material3 org.jetbrains.compose.material3:material3*:1.12.0-alpha01 Material3 1.5.0-alpha19
Material3 Adaptive org.jetbrains.compose.material3.adaptive:adaptive*:1.3.0-beta01 Material3 Adaptive 1.3.0-beta01
Lifecycle org.jetbrains.androidx.lifecycle:lifecycle-*:2.11.0-beta01 Lifecycle 2.11.0-beta01
Navigation org.jetbrains.androidx.navigation:navigation-*:2.10.0-alpha01 Navigation 2.10.0-alpha03
Navigation3 org.jetbrains.androidx.navigation3:navigation3-*:1.1.1 Navigation3 1.1.1
Navigation Event org.jetbrains.androidx.navigationevent:navigationevent-compose:1.1.0 Navigation Event 1.1.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.11.0

Choose a tag to compare

@jb-compose-bot jb-compose-bot released this 13 May 13:41
38f6fc6

Changes since 1.10.3

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.

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

Migration Notes

Multiple Platforms

  • The project has migrated to Kotlin language version and API version 2.2. The projects depending on Compose Multiplatform need to use the same version or newer #2614
  • 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
  • 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
  • runComposeUiTest, runSkikoComposeUiTest, runDesktopComposeUiTest are deprecated in favor v2 versions #2919

iOS

  • parallelRendering flag now enabled by default #2732
  • Compose Multiplatform doesn't support Apple x86_64 targets anymore due to deprecation in Kotlin #5514

Web

  • Renamed WebElementView to HtmlElementView to better reflect its HTML-specific purpose #2636
  • WebElementView has been deprecated in favor of HtmlElementView #2641
  • Kotlin 2.3.20 is required when using Compose Multiplatform with Kotlin/JS or Kotlin/Wasm #2918

Navigation

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

Features

Multiple Platforms

  • Clicking outside of any focusable node using the mouse will now clear focus from the currently focused node, if any. This behavior can be disabled by setting isClearFocusOnMouseDownEnabled = false in ComposePanel, ComposeWindow or ComposeDialog #2533
  • Migrate window insets padding modifiers from composed API to InsetsPaddingModifierNode #2572
  • Add enter end exit animation for Dialog. It can be disabled via DialogProperties.animateTransition or via global feature flag ComposeUiFlags.isDialogAnimationEnabled #2596
  • Update Skia to m144 #2779
  • 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
  • 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

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
  • Add support for tvOS Siri Remote button events (Select, Menu, Play/Pause) #2717
  • 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

  • Allow specifying AWT AccessibleRole directly via SemanticsPropertyReceiver.awtRole #2577
  • Menu items in the context menu for text fields and SelectionContainer can now be disabled #2617
  • 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
  • singleWindowApplication content's receiver now subclasses ApplicationScope too, allowing to programmatically exit the app #2703
  • 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

Read more

1.11.0-rc01

1.11.0-rc01 Pre-release
Pre-release

Choose a tag to compare

@jb-compose-bot jb-compose-bot released this 05 May 12:37
dfacdde

Changes since 1.11.0-beta03

Features

Multiple Platforms

  • (prerelease fix) The isClearFocusOnMouseDownEnabled flag is now false by default #3020

Fixes

Multiple Platforms

  • Fix crash when selecting text right-to-left and then typing a character via IME #2983
  • (prerelease fix) Fix memory leak during mutating Path after migrating to skia m144 #2997

iOS

  • (prerelease fix) Fix WindowInsets.systemBars add extra horizontal insets on iOS 26.0 #3019

Desktop

  • [ComposePanel in compose.swing.render.on.graphics mode] Fix Metal offscreen rendering crash when drawing to a Software renderer #3009

Web

  • (prerelease fix) Fix handling Fast Delete in mobile browsers #2987
  • [iOS] Fix virtual keyboard jumps after each tap. iOS 26.4 only #3013
  • [Safari] Fix an issue where buttons required a second click to respond after performing drag-and-drop operations #3014

Components

Gradle plugin

org.jetbrains.compose version 1.11.0-rc01

Libraries

Library group Coordinates Based on Jetpack
Runtime org.jetbrains.compose.runtime:runtime*:1.11.0-rc01 Runtime 1.11.0
UI org.jetbrains.compose.ui:ui*:1.11.0-rc01 UI 1.11.0
Foundation org.jetbrains.compose.foundation:foundation*:1.11.0-rc01 Foundation 1.11.0
Material org.jetbrains.compose.material:material*:1.11.0-rc01 Material 1.11.0
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-beta01 Lifecycle 2.11.0-beta01
Navigation org.jetbrains.androidx.navigation:navigation-*:2.9.2 Navigation 2.9.7
Navigation3 org.jetbrains.androidx.navigation3:navigation3-*:1.1.1 Navigation3 1.1.1
Navigation Event org.jetbrains.androidx.navigationevent:navigationevent-compose:1.1.0-rc01 Navigation Event 1.1.0
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-beta03

1.11.0-beta03 Pre-release
Pre-release

Choose a tag to compare

@jb-compose-bot jb-compose-bot released this 21 Apr 12:47
99f5ca5

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

1.11.0-beta02 Pre-release
Pre-release

Choose a tag to compare

@jb-compose-bot jb-compose-bot released this 10 Apr 09:53
419f82c

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

1.11.0-beta01 Pre-release
Pre-release

Choose a tag to compare

@jb-compose-bot jb-compose-bot released this 26 Mar 17:12
de9734a

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

Choose a tag to compare

@jb-compose-bot jb-compose-bot released this 19 Mar 14:01
25bafa5

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