1.5.0-beta01
Pre-release
Pre-release
Common
Features
Dialog
API is available to use from common source setPopup
API is available to use from common source setWindowInsets
API is available to use from common source set- A warning if
compose.kotlinCompilerPlugin
is set toandroidx.compose.compiler.compiler
Fixes
Popup
. Fix overridingpressOwner
on multitouch- Fix sending multiple touches in tests
- Fix multi-owner input processing
- Fix paragraph word boundary unicode handling
- Optimize the
Canvas
transformation functions - Fix click outside of common
Dialog
behaviour
iOS
Features
- iOS native scroll and feel
- Simplify resource management (works without CocoaPods now)
TextField
keyboardOptions, capitalizationTextField
, keyboard behavior when have fullscreen size TextFieldTextField
, different behavior strategies on appearing the keyboard- Insets on iOS
- Support
Density.textSize
(Dynamic Type) - Change default fonts (San Francisco is the default font)
- UIKit public
LocalUIViewController
Fixes
- Fix dynamic framework support
- Fix
TextField
context menu - Fix complex blending on iOS
ViewConfiguration.touchSlop
value is quite low on iOS- Fix
topLeftOffset
calculation on iOS in Split View Modifier.draggable
onDragStopped
not calledUIKitView
. Fix lifetime discrepancy within the composition- Support 120hz screens
- Fix incorrect Skiko render target on iOS Metal
- Properly detect content based text direction on native
- Implemented all low-level functions to avoid random crashes
API Changes
- Resource management was reimplemented. Follow the guide in the PR to support new features
CADisableMinimumFrameDurationOnPhone
added to the template'sInfo.plist
to support 120Hz
Desktop
Features
- Swing interop. Experimental off-screen rendering on graphics (hardware accelerated only on macOs at the moment)
- Swing interop.
ComposePanel
that can be disposed manually - Add semantic properties to
DialogWindow
,Popup
andDialog
- Use
Segoe UI
as sans serif font on Windows - Add ProGuard optimize flag
Fixes
- Fix loosing frames on macOs
- Scrolling
LazyColumn
via mouse wheel stops working Slider
can be moved using keyboard, but cannot be submitted- Make one pixel beyond the scrollbar thumb react correctly to clicks
VerticalScrollbar
doesn't work properly whenLazyColumn
existsStickyHeader
- All
Popup
overloads call dismiss onEsc
key by default - Fix Could not infer Java runtime version for Java home directory
- Usage of deprecated
forEachGesture
inScrollbar.desktop.kt
- Test framework fixes
- Implement idling resources for tests
- Implement
SemanticsNodeInteraction.captureToImage()
- Wait until compose is idle before returning from
DesktopTestOwner.getRoots()
- When the test main clock is advanced, call
ComposeScene.render
with the current test time - Add timestamps to batched test input events, and advance the test clock accordingly when sending them
- Tests support semanatic nodes inside
Window
andDialogWindow
API Changes
Web
Features
Fixes
- Workaround
ComposeWindow
multiple event listeners on resize - Fix
Modifier.pointerHoverIcon
for browser apps - Fux
RoundedCornerShape
with zero corners - Fix
ScrollConfig
in web target - Implemented low-level functions to avoid random crashes:
HTML library
Features
Dependencies
This version of Compose Multiplatform is based on the next Jetpack Compose libraries: