Colton Idle
01/12/2023, 1:36 AMPinnableContainer API that allows lazy list items to be pinned, so that they are not disposed when they are scrolled out of bounds. For example, Modifier.focusable() uses this mechanism to pin the currently focused item. (Ib8881, b/259274257, b/195049010)
• The focus system is rewritten using the new experimental Modifier.Node APIs. (I7f4d7, b/247708726, b/255352203, b/253043481, b/247716483, b/254529934, b/251840112, b/251859987, b/257141589)
• Added in IsContainer semantics property on Surfaces. This property will be used in a later change that determines traversal order based on the semantic meaning of elements such as surfaces. (I63379)
• Added new accessibility role DropdownList. This can be used to replicate TalkBack's behavior when focusing android.widget.Spinner. (I177e5, b/236159001)
• You can now use PlatformTextStyle(emojiSupportMatch) to optionally disable emoji support processing for a single Paragraph. (Ia7100, b/139326806)
• Android Compose UI tests will now run layout passes for each frame when executing frames to get to idle (e.g. via waitForIdle). This may affect tests that assert on individual frames of layout animations. (I8ea08, b/222093277)
• Added experimental TextMotion to TextStyle to define Text either to be Static(default) or Animated. Use TextMotion.Animated if Text is going to be scaled, translated, or rotated via animation. (I24dd7)
• Lots of api changes regarding fonts, read more in the actual changelog here
• FlowRow and FlowColumn are now available as @ExperimentalFoundationApi that allow for a more flexible row and column based layout of components that will break to a new line if there is not enough space on the main axis. (I3a7b2)
• `Modifier.basicMarquee()`is available as experimental for displaying content with a scrolling marquee effect. (I2df44, b/139321650)
• Adjustments in the snapping physics in SnapFlingBehaviour for a more natural feel.
• Added a track color parameter for circular progress indicators, and a stroke cap parameter for both circular and linear progress indicators. (Ie668c, b/216325962, b/222964817)
• Renamed ModalBottomSheetState, ModalBottomSheetState.Saver and `rememberModalBottomSheetState`'s confirmStateChange to confirmValueChange. (Ib48d1)
EDIT: The list of cool changes is too big. Putting some of the rest in the threadColton Idle
01/12/2023, 1:37 AMModifier.minimumInteractiveComponentSize. It can be used to reserve at least 48.dp in size to disambiguate touch interactions if the element would measure smaller. (I33f58, b/258495559)
• Incorporated changes in the Swipeable APIs in ModalBottomSheetLayout. `ModalBottomSheetState`'s animateTo does not take an animationSpec parameter anymore and the offset exposed is now nullable. Use requireOffset to require the offset. (Ia2e79)
• A `ModalBottomSheetLayout`'s sheet now has a maximum width of 640 dp. (I71a4f, b/234927577)
• Fixes an issue where rememberPullRefreshState was not updating refreshThreshold and refreshingOffset over time. (Ifed10, b/263159832)
• Progress for progress indicators is now properly bounded to its expected range. (I8a7eb, b/262262727)
• When ModalBottomSheetState has not received any anchors yet, it will update the currentValue without an animation when snapTo or animateTo are called instead of throwing an exception. (I2c91b)
• Fixed the enabled state at the Material 2 FilterChip implementation. (Id326a, b/261329817)
• Fixed a bug where ModalBottomSheetLayout would crash if it was HalfExpanded when rotating from portrait to landscape. Please ensure you are passing in the correct initialValue, for example by checking the configuration. (Ie8df7, b/182882364)
• Fixed an issue where ModalBottomSheetLayout would crash if the sheet content was empty. ModalBottomSheetLayout now allows empty sheet content. If the sheet content is empty, it will only have a Hidden state. (Ic2288, b/200980998, b/216693030)
Material3 updates in 1.1.0-alpha04
• Initial DatePicker API for picking a single date via a calendar UI. This API is still undergoing changes. (I722b9)
• Added support for plain tooltips via PlainTooltipBox. (I0cdfb)
• Search bar (Iad128)
• SwipeToDismiss (I458a8, b/242889540)Colton Idle
01/12/2023, 1:39 AMZoltan Demant
01/12/2023, 3:12 AMAndy Himberger
01/12/2023, 5:30 AMSnapshotStateObserver from recursive and concurrent applies (d902fb)'
fixes the issues we've been seeing for awhile that seem related to concurrent/fast updates to state. too bad the issuetracker link doesn't work since its a private issuemgrazianodecastro
01/12/2023, 6:46 PMTash
01/12/2023, 7:54 PMColton Idle
01/12/2023, 8:00 PMTash
01/12/2023, 8:01 PMmgrazianodecastro
01/12/2023, 8:28 PMColton Idle
01/12/2023, 9:21 PMBerkeli Alashov
01/13/2023, 12:00 AMefemoney
01/13/2023, 10:11 AMColton Idle
01/13/2023, 3:56 PMjossiwolf
01/13/2023, 4:00 PMModalBottomSheetState meanings changed with some refactorings, e.g. progress.
animateTo was made internal as show() provides the same functionality and makes sure the UX adheres to the Material Design guidelines.
We're not exposing offset currently but are happy to consider re-exposing this if there are good use cases 🙂Colton Idle
01/13/2023, 4:35 PMoffset in the past to drive some cool animations (i.e. parrallax effect when bottom sheet was being dragged up). Not sure if there's a way to do that without offset now.Berkeli Alashov
01/13/2023, 6:30 PMjossiwolf
01/16/2023, 9:41 AMColton Idle
01/17/2023, 10:03 PMBerkeli Alashov
01/17/2023, 10:06 PM