You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Remove check for arbitrary transforms in Matrix conversions due to incorrect detection of regular rotation. Now the behaviour is aligned with Android #2860
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
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
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
Remove experimental annotation from LocalUIView#2478
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
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
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
Fix the crash that occurs when the magnifier appears in text fields that are zero size #2460
Fix Lifecycle status updates for multi-window applications using UIScene notifications #2472
Support updating of the WindowInfo.isWindowFocused property when the window's state changes #2482
Fix the text removal issue when inputting text using dictation #2488
Fix onKeyEvent handling when Full Keyboard Access is enabled #2494
Fix incorrect tap responses in Dialog when LocalDensity is modified #2527
Fix the spoken text in merged accessibility nodes #2539
Fix an issue where accessibility elements inside other accessibility elements may not be accessible #2539
Fix focusing of Dialog and Popup when the Full Keyboard Mode is enabled #2606
Fix crash in accessibility when SemanticNode is not attached #2616
Desktop
Fix non-focusable popup with compose.layers.type=WINDOW stealing focus #2285
Change ComposePanel.getPreferredSize to return 0x0 instead of null#2283
Request initial focus for focusable popups when used from ComposePanel in some cases #2289
In experimental compose.layers.type modes, fix Popup/Dialog container size calculation that prevents mouse interactions on base compose scene #2304
Fixed the sizing of unfocusable layers when compose.layers.type=COMPONENT is used #2305
SwingPanel no longer requires to be manually sized to a fixed value; it will size according to its content's min/pref/max sizes #2310
Made disabled new context menu items actually disabled, including the right semantics #2347
Fixed ComposePanel not initially focusing the first focusable node, when running in JetBrains Runtime JVM #2384
Fixed background flashing when a window or dialog are closed #2403
Fix "ComposePanel doesn't use hardware acceleration with RenderSettings.SwingGraphics on Linux" #2422
ComposePanel now re-dispatches unconsumed mouse wheel events, allowing scrollable components beneath to be scrolled. To disable this, set the system property "compose.swing.redispatchMouseWheelEvents" to "false"#2425
Fix background flashing when showing a window/dialog #2471
Fix SwingPanel blocking mouse wheel scroll events from going to its parent #2486
Fix the accessibility issue where screen readers cannot review text in a text field #2553
Fix the accessibility issue where scrollable text fields are not accessible for screen readers #2553
Children of nodes with isTraversalNode semantics are now ordered according to their traversalIndex#2544
[macOs] Fix [MTLTextureDescriptorInternal validateWithDevice:] crash when using zero-size ComposePanel with compose.swing.render.on.graphics=true#2585
[Linux] Support distributions with glibc 2.27 #2585
Fixed a race condition that occurred when multiple processes attempted to unpack Skiko binary files at startup #2585
Web
Mobile. Composite input. When a syllable block is created, a new block is added instead of replacing the old one #2454
Correct drag-and-drop behaviour on mobile devices #2510
Fix incorrect interpretation of ontouchend events #2490
Unblock autocomplete and the other keyboard features on mobile iOS #2529
Correct behaviour when a virtual keyboard suggestion was accepted while the cursor was in the middle of the word #2530
Fix the issue where Hangul input behaves inconsistently after deleting with Backspace #2559
Resources
Fix resource access in a Robolectric test environment #5433
Fixed an issue where resources were not copied when packaging the macOS native target, causing the application to crash when it attempted to read those resources #5431
Fixed resources generated code to be reproducible between different machines #5446
Fix a crash when calling getString and the Locale has no region specified #5447
Use the non-empty font as the default when awaiting a asynchronous request completion on the web #5456
Use Web Cache API for all resources to avoid repeated and redundant HTTP requests #5379
Fix resource gradle tasks invocation on AGP < 9.0.0 for Android Studio previews #5478
Update iOS resource copying to an iOS app bundle to support Swift Export libraries #5480
Navigation
Ignore back gestures in navigation in case of open dialog for non-android targets #2439
SavedState
All platforms have HasDefaultViewModelProviderFactory implementation now, and it provides an ability to use createSavedStateHandle() function without a navigation library #2554
compose.material3 alias from Gradle plugin now points to org.jetbrains.compose.material3:material3:1.9.0 (based on Jetpack Compose Material3 1.4.0), it was org.jetbrains.compose.material3:material3:1.8.2 (based on Jetpack Compose Material3 1.3.2) in Compose Multiplatform 1.9.0. If you want to stay on the same minor version, replace the alias by an explicit dependency: #5441
// was
implementation(compose.material3)
// replace by
implementation("org.jetbrains.compose.material3:material3:1.8.2")
Fixes
iOS
Add ability to reach internal accessibility elements inside accessibility nodes #2416
Fix input session restarts triggered by PlatformImeOptionsImpl not being @Immutable#2413
Fix crash when removing characters after string replacement #2361
Fix context menu appearance for text fields with transformation #2377
Desktop
ComposePanel can now re-dispatch unconsumed mouse wheel events, allowing scrollable components beneath to be scrolled. To enable this behavior, set the system property "compose.swing.redispatchMouseWheelEvents" to "true"#2438
Dependencies
Gradle Plugin org.jetbrains.compose, version 1.9.1. Based on Jetpack Compose libraries:
Added a WebElementView Composable function for embedding the absolutely positioned HTML content in Compose for web target. It's supported only when using ComposeViewport entry point and it's not supported with CanvasBasedWindow, which is deprecated now #2145
Text context menu is supported on web platforms for both modes: mobile and desktop #2207
Introduce the basic support of accessibility in the web target #2188
Migration Notes
Multiple Platforms
Material3 versioning is decoupled for the Compose Multiplatform 1.9.* release due the upstream Jetpack Compose Material3 1.4 has not been released as stable yet #5360
compose.material3 now points to the latest stable Material3 version, 1.8.2. If the latest Material3 features are needed, please include it this way: #5360
[If you use org.jetbrains.compose.material3:material3:1.9.0-beta06] kotlinx-datetime is updated to 0.7.1. If you also use it in your projects, please update it to this version to ensure compatibility #2276
iOS
Remove experimental attribute from UIKitInteropInteractionMode#2215
Desktop
Window and DialogWindow overloads that create a ComposeWindow/ComposeDialog have been renamed to SwingWindow/SwingDialog and the old versions have been deprecated #2141
When the window is iconified, converting to/from screen coordinates (with e.g.LayoutCoordinates.positionOnScreen()) will return Offset.Unspecified#2163
Kotlin 2.1 is required for all platforms including JVM (it was required only for native and web before) #2276
Web
fun ComposeViewport with viewportContainerId: String? parameter now can be called from a web-common fun main (k/js and k/wasm) #2226
CanvasBasedWindow is deprecated, use ComposeViewport instead. Unlike CanvasBasedWindow, which expect as an input param the id to the HTMLCanvasElement that will be used for rendering, ComposeViewport one passes parentContainer (and corresponding HTML Canvas element will be created automatically). By default such container is document.body#2280
Setting org.jetbrains.compose.experimental.jscanvas.enabled=true is not required anymore when having a kotlin/js target #5340
Gradle Plugin
The Compose Gradle plugin requires the Kotlin Gradle plugin version 2.+ now. Old org.jetbrains.compose.compiler is not supported anymore and the API to configure it was removed #5283
Features
Multiple Platforms
Adopted a change in ComposeUiTest API. The block in runComposeUiTest is suspend now. It allows to call awaitIdle and other suspend functions. It ensures a correct execution of a test on all platforms. See the web specifics in kotlinx.coroutines.test.runTestdocumentation#2066
Extended the @Preview (org.jetbrains.compose.ui.tooling.preview) annotation with the following parameters: name, group, widthDp, heightDp, locale, showBackground, backgroundColor. IDE (IJ or AS) will pick up these parameters in the same way it works for androidx Preview annotations #5339
iOS
Add support for native IME configuration with PlatformImeOptions#2108
Added experimental support for save and restore compose state. ComposePanel, ComposeWindow and ComposeDialog now has savedState constructor parameter to restore previous state and saveState function to save the current state for later use #2225
Web
Support the new context menu API in web targets in the desktop mode #2224
Support of the new context menu toolbar in web mobile targets #2251
[js] there's no need to manually a
✂ Note
PR body was truncated to here.
Configuration
📅 Schedule: (UTC)
Branch creation
At any time (no schedule defined)
Automerge
At any time (no schedule defined)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
If you want to rebase/retry this PR, check this box
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.3.0
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.3.1
Mar 9, 2023
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.3.1
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.4.0
Apr 17, 2023
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.4.0
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.4.1
Jun 26, 2023
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.4.1
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.4.2
Jul 25, 2023
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.4.2
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.4.3
Jul 25, 2023
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.4.3
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.5.0
Aug 28, 2023
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.5.0
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.5.1
Sep 6, 2023
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.5.1
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.5.2
Sep 25, 2023
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.5.2
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.5.3
Oct 5, 2023
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.5.3
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.5.10
Nov 1, 2023
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.5.10
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.5.11
Nov 24, 2023
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.5.11
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.5.12
Jan 29, 2024
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.5.12
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.6.0
Feb 27, 2024
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.6.0
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.6.1
Mar 13, 2024
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.6.1
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.6.2
Apr 10, 2024
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.7.1+build1894-release-1.7.1
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.7.1+build1910-release-1.7.1
Nov 7, 2024
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.7.1+build1910-release-1.7.1
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.7.1+build1914-release-1.7.1
Nov 11, 2024
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.7.1+build1914-release-1.7.1
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.7.1
Nov 12, 2024
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.7.1
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.8.0+check
Nov 14, 2024
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.8.0+check
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.8.0
May 6, 2025
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.8.0
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.8.1
May 20, 2025
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.8.1
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.8.2
Jun 17, 2025
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.8.2
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.9.0
Sep 16, 2025
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.9.0
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.9.1
Oct 13, 2025
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.9.1
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.9.2
Oct 28, 2025
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.9.2
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.9.1
Oct 29, 2025
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.9.1
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.9.2
Oct 30, 2025
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.9.2
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.9.3
Nov 6, 2025
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.9.3
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.10.0
Jan 12, 2026
renovateBot
changed the title
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.10.0
Update dependency org.jetbrains.compose:compose-gradle-plugin to v1.10.1
Feb 10, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
1.2.2→1.11.0Release Notes
JetBrains/compose-multiplatform (org.jetbrains.compose:compose-gradle-plugin)
v1.11.0Changes since 1.11.0-beta03
Features
Multiple Platforms
isClearFocusOnMouseDownEnabledflag is nowfalseby default #3020Fixes
Multiple Platforms
Pathafter migrating to skia m144 #2997iOS
WindowInsets.systemBarsadd extra horizontal insets on iOS 26.0 #3019Desktop
ComposePanelincompose.swing.render.on.graphicsmode] Fix Metal offscreen rendering crash when drawing to a Software renderer #3009Web
Components
Gradle plugin
org.jetbrains.composeversion1.11.0-rc01Libraries
org.jetbrains.compose.runtime:runtime*:1.11.0-rc01org.jetbrains.compose.ui:ui*:1.11.0-rc01org.jetbrains.compose.foundation:foundation*:1.11.0-rc01org.jetbrains.compose.material:material*:1.11.0-rc01org.jetbrains.compose.material3:material3*:1.11.0-alpha07org.jetbrains.compose.material3.adaptive:adaptive*:1.3.0-alpha07org.jetbrains.androidx.lifecycle:lifecycle-*:2.11.0-beta01org.jetbrains.androidx.navigation:navigation-*:2.9.2org.jetbrains.androidx.navigation3:navigation3-*:1.1.1org.jetbrains.androidx.navigationevent:navigationevent-compose:1.1.0-rc01org.jetbrains.androidx.savedstate:savedstate*:1.4.0org.jetbrains.androidx.window:window-core:1.5.1v1.10.3Changes since 1.10.2
Fixes
Multiple Platforms
Matrixconversions due to incorrect detection of regular rotation. Now the behaviour is aligned with Android #2860Components
Gradle plugin
org.jetbrains.composeversion1.10.3Libraries
org.jetbrains.compose.runtime:runtime*:1.10.3org.jetbrains.compose.ui:ui*:1.10.3org.jetbrains.compose.foundation:foundation*:1.10.3org.jetbrains.compose.material:material*:1.10.3org.jetbrains.compose.material3:material3*:1.10.0-alpha05org.jetbrains.compose.material3.adaptive:adaptive*:1.3.0-alpha02org.jetbrains.androidx.lifecycle:lifecycle-*:2.10.0org.jetbrains.androidx.navigation:navigation-*:2.9.2org.jetbrains.androidx.navigation3:navigation3-*:1.0.0-alpha06org.jetbrains.androidx.navigationevent:navigationevent-compose:1.0.1org.jetbrains.androidx.savedstate:savedstate*:1.4.0org.jetbrains.androidx.window:window-core:1.5.1v1.10.2Changes since 1.10.1
No Compose Multiplatform specific changes
Components
Gradle plugin
org.jetbrains.composeversion1.10.2Libraries
org.jetbrains.compose.runtime:runtime*:1.10.2org.jetbrains.compose.ui:ui*:1.10.2org.jetbrains.compose.foundation:foundation*:1.10.2org.jetbrains.compose.material:material*:1.10.2org.jetbrains.compose.material3:material3*:1.10.0-alpha05org.jetbrains.compose.material3.adaptive:adaptive*:1.3.0-alpha02org.jetbrains.androidx.lifecycle:lifecycle-*:2.10.0-beta01org.jetbrains.androidx.navigation:navigation-*:2.9.2org.jetbrains.androidx.navigation3:navigation3-*:1.0.0-alpha06org.jetbrains.androidx.navigationevent:navigationevent-compose:1.0.1org.jetbrains.androidx.savedstate:savedstate*:1.4.0org.jetbrains.androidx.window:window-core:1.5.1v1.10.1Changes since 1.10.0
Fixes
Multiple Platforms
compose.materialIconsExtendedto explain that the artifact is pinned to version1.7.3and suggest migration to Material Symbols #5521iOS
Web
Ctrl/Cmd + C(copy) event handling for the selected text wrapped inSelectionContainer#2701Resources
Components
Gradle plugin
org.jetbrains.composeversion1.10.1Libraries
org.jetbrains.compose.runtime:runtime*:1.10.1org.jetbrains.compose.ui:ui*:1.10.1org.jetbrains.compose.foundation:foundation*:1.10.1org.jetbrains.compose.material:material*:1.10.1org.jetbrains.compose.material3:material3*:1.10.0-alpha05org.jetbrains.compose.material3.adaptive:adaptive*:1.3.0-alpha02org.jetbrains.androidx.lifecycle:lifecycle-*:2.10.0-alpha06org.jetbrains.androidx.navigation:navigation-*:2.9.2org.jetbrains.androidx.navigation3:navigation3-*:1.0.0-alpha06org.jetbrains.androidx.navigationevent:navigationevent-compose:1.0.1org.jetbrains.androidx.savedstate:savedstate*:1.4.0org.jetbrains.androidx.window:window-core:1.5.1v1.10.0Changes since 1.9.3
See also What's new.
Highlights
Multiple Platforms
androidx.compose.ui.tooling.preview.Previewannotation is now available fromcommonMainsource set #2424Desktop
Navigation
NavigationEventDispatcherOwnerfor a correct Navigation3 support #2382Breaking Changes
iOS
@Composableattribute inWindowInsets.Companion.captionBarto other platforms #2258Migration Notes
Multiple Platforms
PopupProperties/DialogPropertiesconstructors (annotatedDeprecated(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 #2303usePlatformInsets,useSoftwareKeyboardInsetandscrimColorinDialogProperties#2495usePlatformDefaultWidth,usePlatformInsetsinPopupProperties#2495Popupoverloads withoutPopupPropertiesparameter changed fromWARNINGtoERROR#2495widgets-gallerysample has been removed in favor of the interactive API reference #5365org.jetbrains.compose.ui.tooling.preview.Previewannotation in favor ofandroidx.compose.ui.tooling.preview.Previewto reduce variety of Preview annotations #5453compose.ui) are now deprecated. Use provided direct artifact coordinates and add them to the version catalog #5462iOS
LocalUIView#2478defaultUIKitMain(). Please follow up-to-date guidelines to create an iOS application #2578Desktop
androidx.compose.desktop.ui.tooling.preview.Previewannotation in favor ofandroidx.compose.ui.tooling.preview.Previewto reduce variety of Preview annotations #2474Features
Multiple Platforms
LocalLifecycleOwnerinsiderunComposeUiTestby default #2400iOS
WindowInsetsRulers#2258UIResponder.inputViewwithPlatformImeOptions#2350UIResponder.inputAccessoryViewwithPlatformImeOptions#2350UITextInputTraits.writingToolsBehaviorwithPlatformImeOptions#2435UIKitInteropProperties.placedAsOverlayflag, which allows to place interop views above the Compose canvas. This allows interop views with a transparent background or shader effect to be used #2501Desktop
modalityTypeparameter toDialogWindow()#2300ComposeWindow,ComposePanelandImageComposeScene) now exposeval semanticsOwners: Collection<SemanticsOwner>#2358-Dskiko.gpu.resourceCacheLimitVM property is introduced to limit GPU resource cache used for one window (default is 256M) #2422Web
Resources
setResourceReaderAndroidContextto configure Android context in cases when a provider initialization is not available #5434Lifecycle
lifecycle-viewmodel-navigation3library #2476Navigation
org.jetbrains.compose.material3.adaptive:adaptive-navigation3library #2516ComposeUIViewControllerto set end-edge gestures behavior #2519HTML
importantkeyword for CSS properties #5439Fixes
Multiple Platforms
baselineShiftparameter in text layout #2304lineHeightto0in text layout #2304roundToPx()behavior between platforms:NaNvalue produces0instead ofIllegalArgumentExceptionon non-JVM platforms now #2526ExperimentalComposeUiApiannotation to platform-specificDragAndDropTransferData,DragAndDropEventandClipEntryconstructors 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 #2538LocalInputModeManager.current.inputModenot being reset between tests #2548iOS
WindowInsets.displayCutoutin different interface orientations #2301WindowInsets.displayCutouton iPad #2301Popups andDialogs #2270TextFieldfocus when another view becomes first responder #2337parallelRenderingis enabled #2448Popups andDialogs #2434UIScenenotifications #2472WindowInfo.isWindowFocusedproperty when the window's state changes #2482onKeyEventhandling whenFull Keyboard Accessis enabled #2494DialogwhenLocalDensityis modified #2527NSRangeExceptionon back gesture #2605DialogandPopupwhen the Full Keyboard Mode is enabled #2606SemanticNodeis not attached #2616Desktop
compose.layers.type=WINDOWstealing focus #2285ComposePanel.getPreferredSizeto return 0x0 instead ofnull#2283ComposePanelin some cases #2289compose.layers.typemodes, fixPopup/Dialogcontainer size calculation that prevents mouse interactions on base compose scene #2304compose.layers.type=COMPONENTis used #2305SwingPanelno longer requires to be manually sized to a fixed value; it will size according to its content's min/pref/max sizes #2310ComposePanelnot initially focusing the first focusable node, when running in JetBrains Runtime JVM #2384RenderSettings.SwingGraphicson Linux" #2422"compose.swing.redispatchMouseWheelEvents"to"false"#2425SwingPanelblocking mouse wheel scroll events from going to its parent #2486isTraversalNodesemantics are now ordered according to theirtraversalIndex#2544[MTLTextureDescriptorInternal validateWithDevice:]crash when using zero-sizeComposePanelwithcompose.swing.render.on.graphics=true#2585Web
ontouchendevents #2490Resources
getStringand the Locale has no region specified #5447Navigation
SavedState
HasDefaultViewModelProviderFactoryimplementation now, and it provides an ability to usecreateSavedStateHandle()function without a navigation library #2554Components
Gradle plugin
org.jetbrains.composeversion1.10.0Libraries
org.jetbrains.compose.runtime:runtime*:1.10.0org.jetbrains.compose.ui:ui*:1.10.0org.jetbrains.compose.foundation:foundation*:1.10.0org.jetbrains.compose.material:material*:1.10.0org.jetbrains.compose.material3:material3*:1.10.0-alpha05org.jetbrains.compose.material3.adaptive:adaptive*:1.3.0-alpha02org.jetbrains.androidx.lifecycle:lifecycle-*:2.10.0-alpha06org.jetbrains.androidx.navigation:navigation-*:2.9.1org.jetbrains.androidx.navigation3:navigation3-*:1.0.0-alpha06org.jetbrains.androidx.navigationevent:navigationevent-compose:1.0.0org.jetbrains.androidx.savedstate:savedstate*:1.4.0org.jetbrains.androidx.window:window-core:1.5.1v1.9.3Changes since 1.9.2
Fixes
iOS
Gradle Plugin
Dependencies
Gradle Plugin
org.jetbrains.compose, version1.9.3. Based on Jetpack Compose libraries:Compose Material3 libraries
org.jetbrains.compose.material3:material3*:1.9.0. Based on Jetpack Compose Material3 1.4.0Compose Material3 Adaptive libraries
org.jetbrains.compose.material3.adaptive:adaptive*:1.2.0. Based on Jetpack Compose Material3 Adaptive 1.2.0Lifecycle libraries
org.jetbrains.androidx.lifecycle:lifecycle-*:2.9.6. Based on Jetpack Lifecycle 2.9.4Navigation libraries
org.jetbrains.androidx.navigation:navigation-*:2.9.1. Based on Jetpack Navigation 2.9.4Savedstate library
org.jetbrains.androidx.savedstate:savedstate*:1.3.6. Based on Jetpack Savedstate 1.3.3WindowManager Core library
org.jetbrains.androidx.window:window-core:1.4.0. Based on Jetpack WindowManager 1.4.0v1.9.2Changes since 1.9.1
Fixes
Multiple Platforms
savedstate-composedue to redirects to Google'sruntime-saveablethat supports all KMP platforms #2503Web
Canvaselement when it's focused #2450Dependencies
Gradle Plugin
org.jetbrains.compose, version1.9.2. Based on Jetpack Compose libraries:Compose Material3 libraries
org.jetbrains.compose.material3:material3*:1.9.0. Based on Jetpack Compose Material3 1.4.0Compose Material3 Adaptive libraries
org.jetbrains.compose.material3.adaptive:adaptive*:1.2.0. Based on Jetpack Compose Material3 Adaptive 1.2.0Lifecycle libraries
org.jetbrains.androidx.lifecycle:lifecycle-*:2.9.5. Based on Jetpack Lifecycle 2.9.4Navigation libraries
org.jetbrains.androidx.navigation:navigation-*:2.9.1. Based on Jetpack Navigation 2.9.4Savedstate library
org.jetbrains.androidx.savedstate:savedstate*:1.3.5. Based on Jetpack Savedstate 1.3.3WindowManager Core library
org.jetbrains.androidx.window:window-core:1.4.0. Based on Jetpack WindowManager 1.4.0v1.9.1Changes since 1.9.0
Migration Notes
Multiple Platforms
compose.material3alias from Gradle plugin now points toorg.jetbrains.compose.material3:material3:1.9.0(based on Jetpack Compose Material31.4.0), it wasorg.jetbrains.compose.material3:material3:1.8.2(based on Jetpack Compose Material31.3.2) in Compose Multiplatform1.9.0. If you want to stay on the same minor version, replace the alias by an explicit dependency: #5441Fixes
iOS
PlatformImeOptionsImplnot being@Immutable#2413Desktop
ComposePanelcan now re-dispatch unconsumed mouse wheel events, allowing scrollable components beneath to be scrolled. To enable this behavior, set the system property"compose.swing.redispatchMouseWheelEvents"to"true"#2438Dependencies
Gradle Plugin
org.jetbrains.compose, version1.9.1. Based on Jetpack Compose libraries:Compose Material3 libraries
org.jetbrains.compose.material3:material3*:1.9.0. Based on Jetpack Compose Material3 1.4.0Compose Material3 Adaptive libraries
org.jetbrains.compose.material3.adaptive:adaptive*:1.2.0-alpha05. Based on Jetpack Compose Material3 Adaptive 1.2.0-alpha10Lifecycle libraries
org.jetbrains.androidx.lifecycle:lifecycle-*:2.9.5. Based on Jetpack Lifecycle 2.9.4Navigation libraries
org.jetbrains.androidx.navigation:navigation-*:2.9.1. Based on Jetpack Navigation 2.9.4Savedstate library
org.jetbrains.androidx.savedstate:savedstate:1.3.5. Based on Jetpack Savedstate 1.3.3WindowManager Core library
org.jetbrains.androidx.window:window-core:1.4.0. Based on Jetpack WindowManager 1.4.0v1.9.0Changes since 1.8.2
See also What's new.
Highlights
Web
WebElementViewComposable function for embedding the absolutely positioned HTML content in Compose for web target. It's supported only when usingComposeViewportentry point and it's not supported withCanvasBasedWindow, which is deprecated now #2145Migration Notes
Multiple Platforms
compose.material3now points to the latest stable Material3 version, 1.8.2. If the latest Material3 features are needed, please include it this way: #5360org.jetbrains.compose.material3:material3:1.9.0-beta06]kotlinx-datetimeis updated to0.7.1. If you also use it in your projects, please update it to this version to ensure compatibility #2276iOS
UIKitInteropInteractionMode#2215Desktop
WindowandDialogWindowoverloads that create aComposeWindow/ComposeDialoghave been renamed toSwingWindow/SwingDialogand the old versions have been deprecated #2141LayoutCoordinates.positionOnScreen()) will returnOffset.Unspecified#2163Modifier.mouseClickableis removed. See https://www.jetbrains.com/help/kotlin-multiplatform-dev/compose-desktop-mouse-events.html for alternatives #2194Web
fun ComposeViewportwithviewportContainerId: String?parameter now can be called from a web-commonfun main(k/js and k/wasm) #2226CanvasBasedWindowis deprecated, useComposeViewportinstead. UnlikeCanvasBasedWindow, which expect as an input param the id to theHTMLCanvasElementthat will be used for rendering,ComposeViewportone passesparentContainer(and corresponding HTML Canvas element will be created automatically). By default such container isdocument.body#2280org.jetbrains.compose.experimental.jscanvas.enabled=trueis not required anymore when having a kotlin/js target #5340Gradle Plugin
org.jetbrains.compose.compileris not supported anymore and the API to configure it was removed #5283Features
Multiple Platforms
ComposeUiTestAPI. TheblockinrunComposeUiTestissuspendnow. It allows to callawaitIdleand other suspend functions. It ensures a correct execution of a test on all platforms. See the web specifics inkotlinx.coroutines.test.runTestdocumentation #2066@Preview(org.jetbrains.compose.ui.tooling.preview) annotation with the following parameters: name, group, widthDp, heightDp, locale, showBackground, backgroundColor. IDE (IJ or AS) will pick up these parameters in the same way it works forandroidxPreview annotations #5339iOS
PlatformImeOptions#2108keepScreenOnmodifier #2180Desktop
Switch, reporting it as a checkbox #2136SwingFrameandSwingDialogcomposables that allow configuring the window/dialog before it is shown #2139AnnotatedStringis available as a data flavor inClipEntry, instead of only its text #2092RenderSettings.SwingGraphicsoption forComposePanel.renderSettingsargument #2071ComposePanel,ComposeWindowandComposeDialognow hassavedStateconstructor parameter to restore previous state andsaveStatefunction to save the current state for later use #2225Web
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.