Update dependency org.jetbrains.compose to v1.9.0 #144
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.
Coming soon: The Renovate bot (GitHub App) will be renamed to Mend. PRs from Renovate will soon appear from 'Mend'. Learn more here.
This PR contains the following updates:
1.5.12
->1.9.0
Release Notes
JetBrains/compose-jb (org.jetbrains.compose)
v1.9.0
Changes since 1.9.0-rc01
Fixes
Multiple Platforms
Web
Gradle Plugin
composeCompatibilityBrowserDistribution
task lazy configuration #5398Dependencies
Gradle Plugin
org.jetbrains.compose
, version1.9.0-rc02
. Based on Jetpack Compose libraries:Compose Material3 libraries
org.jetbrains.compose.material3:material3*:1.9.0-beta05
. Based on Jetpack Compose Material3 1.4.0-beta03Compose Material3 Adaptive libraries
org.jetbrains.compose.material3.adaptive:adaptive*:1.2.0-alpha06
. Based on Jetpack Compose Material3 Adaptive 1.2.0-alpha11Lifecycle libraries
org.jetbrains.androidx.lifecycle:lifecycle-*:2.9.4-rc01
. Based on Jetpack Lifecycle 2.9.2Navigation libraries
org.jetbrains.androidx.navigation:navigation-*:2.9.0-rc02
. Based on Jetpack Navigation 2.9.1Savedstate library
org.jetbrains.androidx.savedstate:savedstate:1.3.4-rc01
. Based on Jetpack Savedstate 1.3.1WindowManager Core library
org.jetbrains.androidx.window:window-core:1.4.0-rc02
. Based on Jetpack WindowManager 1.4.0v1.8.2
Changes since 1.8.1
Fixes
Multiple Platforms
Fixed
TextField(TextFieldValue)
when used with a visual transformation with a non-identity offset mapping (potentially even crashing) #2130Fixed a memory leak and performance degradation when
ComposeUiFlags.isRectTrackingEnabled
set totrue
(by default) #2123Fixed caret placement near glyphs if glyphs are compound symbols and part of them are non-spacing marks #2155
Support Preview parameters for Previews in common source sets in IJ and AS. Note: IDEs also need to implement support on their end. Please check the respective IDE release notes to confirm this is supported #5323
Example usage:
Desktop
1.0
#2158Navigation
NavHost
is located in a scrollable container #2146Dependencies
Gradle Plugin
org.jetbrains.compose
, version1.8.2
. Based on Jetpack Compose libraries:Lifecycle libraries
org.jetbrains.androidx.lifecycle:lifecycle-*:2.9.1
. Based on Jetpack Lifecycle 2.9.1Material3 Adaptive libraries
org.jetbrains.compose.material3.adaptive:adaptive*:1.1.2
. Based on Jetpack Material3 Adaptive 1.1.0Navigation libraries
org.jetbrains.androidx.navigation:navigation-*:2.9.0-beta03
. Based on Jetpack Navigation 2.9.0Savedstate library
org.jetbrains.androidx.savedstate:savedstate:1.3.1
. Based on Jetpack Savedstate 1.3.0WindowManager Core library
org.jetbrains.androidx.window:window-core:1.4.0-alpha07
. Based on Jetpack WindowManager 1.4.0-alpha04v1.8.1
Changes since 1.8.0
Features
Resources
Res
class name #5296Fixes
Multiple Platforms
iOS
androidx.compose.material3.ModalBottomSheet
closes after any tap #2086ComposeUIViewController
when text input starts #2088UIKitViewController
insidePopup
orDialog
#2102Desktop
svgPainter
doesn't show any images #2096BroadcastFrameClock.lock
andRecomposer.stateLock
#2098androidx.navigation
and running./gradlew runRelease
#5314kotlinx.serialization
ProGuard rules are bundled in the Compose Gradle plugin #5314Web
Resources
Dependencies
Gradle Plugin
org.jetbrains.compose
, version1.8.1
. Based on Jetpack Compose libraries:Lifecycle libraries
org.jetbrains.androidx.lifecycle:lifecycle-*:2.9.0
. Based on Jetpack Lifecycle 2.9.0Navigation libraries
org.jetbrains.androidx.navigation:navigation-*:2.9.0-beta02
. Based on Jetpack Navigation 2.9.0Material3 Adaptive libraries
org.jetbrains.compose.material3.adaptive:adaptive*:1.1.1
. Based on Jetpack Material3 Adaptive 1.1.0v1.8.0
Changes since 1.7.3
Highlights
Multiple Platforms
BackHandler
andPredictiveBackHandler
. And use them in material3 widgets and androidx-navigation library #1771iOS
fun enableTraceOSLog()
#1652Web
Resources
FontVariation.Settings
support to the resources library #5183Breaking Changes
Tests
runOnIdle
will now executeaction
on the UI thread aligning the behavior with Android #1601runOnIdle
will no longer callwaitForIdle
after executing the action aligning the behavior with Android #1601mainClock
such that it doesn't reach the next frame, will no longer cause a recomposition #1618Multiple Platforms
core-bundle
module to the androidx SavedState. Libraries that useorg.jetbrains.androidx.lifecycle:lifecycle-viewmodel-savedstate
ororg.jetbrains.androidx.savedstate:savedstate
should migrate to the latest version #1850LocalTextInputService
is no longer supported #1974iOS
AccessibilitySyncOptions
and removeAccessibilityDebugLogger
from public API #1604WindowInsets.Companion.waterfall
getter to match the expected API #1919Desktop
Modifier.onExternalDrag
has been removed - commonModifier.dragAndDropTarget
API should be used instead #1606Migration Notes
Multiple Platforms
google()
repo torepositories {...}
block if it is not there yet #1819material-icons-core
so if your project relied on that, you will have to explicitly add that dependency in yourbuild.gradle[.kts]
files: #2030iOS
LocalUIViewController
moved to theandroidx.compose.ui.uikit
module #1608ComposeUIViewControllerDelegate
marked as deprecated. Use the parent view controller to override the methods of theUIViewController
class #1651CupertinoScrollDecayAnimationSpec
andCupertinoOverscrollEffect
are removed from public API #1806Gradle Plugin
org.jetbrains.compose.compiler
is not supported anymore and the API to configure it was removed #5293Features
Multiple Platforms
LineHeightStyle.Alignment
#1569Clipboard
interface with suspend functions, which work correctly on all targets including Web. TheClipboardManager
was deprecated because it was not possible to correctly implement it for Web #1796iOS
ComposeUIViewControllerConfiguration.useSeparateRenderThreadWhenPossible
flag that allows offloading GPU commands encoding to the separate thread and improving performance #1694AccessibilitySyncOptions
removed. The accessibility tree is built on demand #1780UIAccessibilityContainerTypeSemanticGroup
for traversal groups #1809UIScrollView
s, as well as withinUIScrollView
s #1818BasicTextField(TextFieldState)
#1598androidx.navigation
transition animation on iOS is as close as possible to the iOS back gesture #1861ComposeUIViewController
leaves view controller hierarchy #1877BasicTextField(TextFieldState)
#1923BasicTextField(TextFieldState)
#1926Desktop
-keep class
for the associated with error class in "Location:"androidx.
package, it might a Compose bug, please report in https://youtrack.jetbrains.com/issues/CMP. The-keep class
workaround should also work in this caseWeb
PointerIcon.fromKeyword
function to change the browser cursor #1704Resources
preloadFont
,preloadImageBitmap
,preloadImageVector
#5159Gradle Plugin
androidLibrary
target #5157Navigation
navController.navigate(Uri)
method #1617navController.handleDeepLink(NavDeepLinkRequest)
method #1617Fixes
Tests
captureToImage
#1820Multiple Platforms
FontRenderingSettings
is not reflected until composition restarts #1595ModalDrawerSheet
overload withDrawerState
argument #1763placeWithLayer
scale application: offset is not scaled now (Android behavior) #1784TextField(TextFieldState)
(akaBasicTextField2
) transformations incorrectly leeching into the untransformed text itself, when input method is used (Chinese and other languages with multi-keystroke character input) #1833IllegalArgumentException: Object already closed
duringGraphicsLayer.record
#1839implementation()
toapi()
) #1883ScrollState.viewportSize
for (Basic)TextField(TextFieldState)
#1896IllegalArgumentException: maxWidth(value) must be >= than minWidth(0)
crashes when aTextField
withtrailingIcon
is too narrow #1936TextField(TextFieldState)
while also editing the text, such as by pressing Backspace #1969InterceptPlatformTextInput
for the legacy TextField #1974iOS
defaultUIKitMain()
#1585androidx.compose.material3.internal.formatWithSkeleton
that was accidently marked as public #1609optOutOfCupertinoOverscroll()
removed #1753UIMenu
that appears over the Compose content #1818TextField
#1894ComposeUIViewController
is shifted #1899usePlatformInsets = true
#1920MetalView
when Compose controller re-enters view hierarchy #1938BasicTextField(TextFieldState)
with appliedOutputTransformation
#1953BasicTextField(TextFieldState)
#1956BasicTextField(TextFieldState)
#1984LocalSoftwareKeyboardController
inBasicTextField(TextFieldState)
#1974BasicTextField(TextFieldState)
#2018Desktop
Move
#1683compose.swing.render.on.graphics=true
#1688Dialog
/Popup
creation in case ofcompose.layers.type=COMPONENT
and pointingwindowContainer
toComposePanel
itself #1747compose.interop.blending
flag (1.7.0 regression) #1774Modifier.semantics { hideFromAccessibility() }
should now be correctly hidden from a11y #1798TextField(TextFieldState)
(akaBasicTextField2
) #1794TextField(TextFieldState)
(akaBasicTextField2
) #1810Modifier.selectable
withRole.RadioButton
will have their state reported to accessibility viaAccessibleValue.getCurrentAccessibleValue()
and asAccessibleState.CHECKED
ingetAccessibleStateSet()
#1797SwingPanel
s when usingcompose.interop.blending=true
#1901onRenderApiChanged
inComposeWindow
andComposeDialog
not working when the renderer changes due to fallback, rather than explicit change #1911compose.interop.blending=true
completely breaking Swing interop on Windows when Direct3D is unsupported. Note that interop blending is still supported on Windows only if Direct3D is available #1913SecureTextField
#1853TextFieldState
are now correctly reported to the transformations when inputting composite characters (e.g. ㅀ), instead of the whole text being replaced on each new character #1853Snapshot.sendApplyNotifications
from a thread other than the event dispatching thread #1955compose.interop.blending
flag #1908Execution failed for task ':composeApp:proguardReleaseJars'
whenmaterial3
is included in the project #5261Web
BasicTextField
handles browser copy/cut/paste events correctly now. Previously, they were ignored #1795TextField
is clicked/receives focus #1865TextField
#1876Text
andTextField
s, to avoid them being drawn as tofu #1943Modifier.detectTransformGestures
will allow to handle zoom and rotation gestures #1942Resources
android:autoMirrored="true"
property and pass it to ImageVector builder #5140Navigation
No destination with ID 0 is on the NavController's back stack
crash on iOS #1596Dependencies
Gradle Plugin
org.jetbrains.compose
, version1.8.0
. Based on Jetpack Compose libraries:Lifecycle libraries
org.jetbrains.androidx.lifecycle:lifecycle-*:2.9.0-beta01
. Based on Jetpack Lifecycle 2.9.0-beta01Navigation libraries
org.jetbrains.androidx.navigation:navigation-*:2.9.0-beta01
. Based on Jetpack Navigation 2.9.0-beta01Material3 Adaptive libraries
org.jetbrains.compose.material3.adaptive:adaptive*:1.1.0
. Based on Jetpack Material3 Adaptive 1.1.0v1.7.3
Changes since 1.7.1
Features
Desktop
Fixes
iOS
UIKitInteropInteractionMode.Cooperative
interaction modeUINavigationController
should recognize correctlyDependencies
Gradle Plugin
org.jetbrains.compose
, version1.7.3
. Based on Jetpack Compose libraries:Lifecycle libraries
org.jetbrains.androidx.lifecycle:lifecycle-*:2.8.4
. Based on Jetpack Lifecycle 2.8.5Navigation libraries
org.jetbrains.androidx.navigation:navigation-*:2.8.0-alpha11
. Based on Jetpack Navigation 2.8.0Material3 Adaptive libraries
org.jetbrains.compose.material3.adaptive:adaptive*:1.0.1
. Based on Jetpack Material3 Adaptive 1.0.0v1.7.1
Changes since 1.7.0
Fixes
Multiple Platforms
Modifier.clickable
binary compatibility with 1.6 on non-JVM targetsModifier.toggleable
andModifier.selectable
binary compatibility with 1.6 on non-JVM targetsDateRangePicker
doesn't show confirmation button on iOS and DesktopiOS
Desktop
Dependencies
Gradle Plugin
org.jetbrains.compose
, version1.7.1
. Based on Jetpack Compose libraries:Lifecycle libraries
org.jetbrains.androidx.lifecycle:lifecycle-*:2.8.4
. Based on Jetpack Lifecycle 2.8.5Navigation libraries
org.jetbrains.androidx.navigation:navigation-*:2.8.0-alpha10
. Based on Jetpack Navigation 2.8.0Material3 Adaptive libraries
org.jetbrains.compose.material3.adaptive:adaptive*:1.0.1
. Based on Jetpack Material3 Adaptive 1.0.0v1.7.0
Changes since 1.6.11
Highlights
Resources
Navigation
Web
skiko.js
is redundant in case of K/Wasm Compose Multiplatform for web applications and it can be removed from index.html files to not load redundant files.skiko.js
will be removed from the k/wasm distribution in the future releases.skiko.js
is still needed in case of K/JS Compose Multiplatform for web appsBreaking changes
iOS
UIKitView
andUIKitViewController
inpackage androidx.compose.ui.interop
are deprecated. New API are mentioned in deprecation message. Deprecated invocations should work fine unless customonResize
is used, it is disallowed now and will print a warning.InteropView
on iOS isUIResponder
now instead ofUIView
. It's the first common ancestor forUIViewController
andUIView
, both of which can be integrated using iOS interop APIsCADisableMinimumFrameDurationOnPhone
is not set to true inInfo.plist
. Use newly addedComposeUIViewControllerConfiguration.enforceStrictPlistSanityCheck
to opt-out of this behaviorDesktop
Modifier.onExternalDrag
has been deprecated in favor of the newModifier.dragAndDropTarget
Android
Resources
compose.ui
in favour of the new resource libraryFeatures
Multiple Platforms
clickable
modifier now responds to NumPadEnter and Spacebar, too, in addition to EnterLocalLifecycleOwner
moved from Compose UI tolifecycle-runtime-compose
so that its Compose-based helper APIs can be used outside of Compose UIorg.jetbrains.compose.material3:material3-window-size-class
moduleorg.jetbrains.compose.material3.adaptive:adaptive*
modulesmaterial3-adaptive-navigation-suite
is multiplatform nowiOS
accessibilityEnabled: Boolean = true
argument toUIKitView
andUIKitViewController
preferredStatusBarStyle
,preferredStatysBarAnimation
andprefersStatusBarHidden
are added toComposeUIViewControllerDelegate
to allow status bar appearance modificationUIKitView
andUIKitViewController
API inpackage androidx.compose.ui.viewinterop
. Support ofonReset
to reuse the interop composable emitted node and avoid excessive native views reallocations, fine-grain touches strategy control (cooperative with explicit time delay, non-cooperative where no touches are received by Compose, ignoring touches)BasicTextField(TextFieldState, ...)
on iOSDesktop
RenderSettings
toComposePanel
. Added a classRenderSettings
withval isVsyncEnabled: Boolean?
. When set totrue
gives a hint to renderer implementation of the particularComposePanel
to reduce the latency between the input and visual changes in exchange for possible screen tearingmoveEnabled
andpositionPercentage
setters inSplitPaneState
Modifier.dragAndDropSource
andModifier.dragAndDropTarget
decoration
argumentResources
Bitmap ByteArray as ImageVector
andXML ByteArray as ImageVector
in the common code andSVG ByteArray as Painter
in the non-android codeGradle Plugin
compose.material3AdaptiveNavigationSuite
shortcut in the gradle pluginFixes
Multiple Platforms
commonMain
that fails on Android withNoSuchMethodException
Popup
jerking during ripple effect animationShaderBrush
to part ofAnnotatedString
brush
animation and optiConfiguration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ 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.