Skip to content

2022-04-05

Choose a tag to compare

@github-actions github-actions released this 06 Apr 18:44
· 219 commits to main since this release

Activity: v1.5.0-alpha05

April 6, 2022

androidx.activity:activity:1.5.0-alpha05, androidx.activity:activity-compose:1.5.0-alpha05, and androidx.activity:activity-ktx:1.5.0-alpha05 are released. Version 1.5.0-alpha05 contains these commits.

Bug Fixes

  • ComponentActivity's onPanelClosed() now calls the super onPanelClosed() as well, fixing an issue where the onContextMenuClosed method would not be called. (Ib6f77)

Appcompat: v1.5.0-alpha01

April 6, 2022

androidx.appcompat:appcompat:1.5.0-alpha01 and androidx.appcompat:appcompat-resources:1.5.0-alpha01 are released. Version 1.5.0-alpha01 contains these commits.

API Changes

  • Added a new API to expose switch thumb's position to subclasses (I9bfb4)
  • Updated nullability to match Tiramisu DP2 (I0cbb7)
  • Backported compound drawable tinting to TextView-derived widgets (Idf98c, b/165822337)
  • AppCompatDialog now extends ComponentDialog for compatibility with OnBackPressedDispatcher (Id9b91, b/217620781)
  • SearchView.onQueryRefine() is now protected visibility to allow overrides (I6cce0, b/212882845)

Bug Fixes

  • AppCompat Toolbar now calls MenuHostHelper's onPrepareMenu() API. (I9b9b5, b/227376894)
  • AppCompatEditText, AppCompatAutoCompleteEditText, AppCompatMultiAutoCompleteEditText will no longer reset clickable or longClickable in the constructor when set in XML (Ic5066, b/221094907)
  • AppCompatEditText, AppCompatAutoCompleteTextView, and AppCompatMultiAutoCompleteTextView will not call overridden setKeyListener during the constructor (I5c13a, b/208480173)
  • Appcompat will not wrap instances of NumberKeyListener passed to setKeyListener, allowing TextView to correctly configure the locale on NumberKeyListeners (Ibf113, b/207119921)
  • Fixed issue with all NumberKeyListener subclasses introduced in AppCompat 1.4.0 that allowed unexpected characters such as punctuation to be input (Iede7a, b/207119921)

Benchmark: v1.1.0-beta06

April 6, 2022

androidx.benchmark:benchmark-*:1.1.0-beta06 is released. Version 1.1.0-beta06 contains these commits.

Bug Fixes

  • Fix trace recording crash on API 21/22 (If7fd6, b/227509388)
  • Overhaul activity launch completion detection to fix 'Unable to read any metrics' exception in startup macrobenchmarks. (Ia517c)

Camera-Camera2, Camera-Core, Camera-Lifecycle, & Camera-Video: v1.1.0-beta03

April 6, 2022

androidx.camera:camera-*:1.1.0-beta03 is released. Version 1.1.0-beta03 contains these commits.

API Changes

  • Made CaptureRequestOptions constructor restricted. (I261b6)
  • Added an experimental API for using CameraController with external image processing libraries. e.g. MLKit (I4ea71)

Bug Fixes

  • Fixed the issue that preview becomes sideway in PreviewView when activity is not restarted after rotating devices in multi-window. (I1ea36, b/223488673)
  • Fix a multi-window issue that when focus changes back to the app it fails to resume the camera when (1) other high priority app opens a different camera (2) the device is Samsung Android 12 devices. (I7e9f2)
  • Workaround included for devices that crash when checking availability of flash. These devices will not have torch available. (If26a3, b/216667482)
  • Fix AbstractMethodError issue happened when apps use extensions and enable proguard. (I7cbaf, b/222726805)
  • Force disable bokeh extension mode on Motorola razr 5G device which will cause black preview screen issue. (I35d49)
  • Fixed audio/video out of sync after pause and resume on some Samsung devices pre-API 29. (I64622, b/202798609, b/202798572)
  • Fixed audio/video out of sync after pause and resume on Sony G3125. (I2a1a5, b/202799148)
  • Fixed a crash when the Recorder encountered an InvalidConfigException. However, this fix only prevents app from crashing, but doesn't resolve the cause of the InvalidConfigException. If the Recorder still cannot be configured, applications will receive error callback when it starts recording. (I89c29, b/213617227)

External Contribution

  • updated :compose:ui:ui-test api (updateApi) due to test-coroutines-lib migration (I3366d)

Compose Animation: v1.2.0-alpha07

April 6, 2022

androidx.compose.animation:animation:1.2.0-alpha07, androidx.compose.animation:animation-core:1.2.0-alpha07, and androidx.compose.animation:animation-graphics:1.2.0-alpha07 are released. Version 1.2.0-alpha07 contains these commits.

API Changes

Compose Compiler: v1.2.0-alpha07

April 6, 2022

androidx.compose.compiler:compiler:1.2.0-alpha07 is released. Version 1.2.0-alpha07 contains these commits.

Compose Foundation: v1.2.0-alpha07

April 6, 2022

androidx.compose.foundation:foundation:1.2.0-alpha07 and androidx.compose.foundation:foundation-layout:1.2.0-alpha07 are released. Version 1.2.0-alpha07 contains these commits.

API Changes

  • Added a PinnableParent API that allows children of lazy layouts to prevent the currently composed items from being disposed (Ibbdd0, b/184670295)
  • LazyListLayoutInfo and LazyGridLayoutInfo now have beforeContentPadding and afterContentPadding fields (I3b628, b/200920410)
  • Added KeyboardType.Decimal as an alternative to Keyboard.Number for specifically including decimal separator in IME. (Iec4c8, b/209835363)
  • Add new font descriptor Font(DeviceFontFamilyName) to optionally lookup system-installed fonts during font fallback chains. (I30468, b/219754572)
  • PointerEventType.Scroll and PointerEvent.scrollDelta are stable APIs now (I574c5, b/225669674)
  • Added temporary compatibility configuration for includeFontPadding in TextStyle/ParagraphStyle. includeFontPadding can be changed via TextStyle(platformStyle = PlatformTextStyle(includeFontPadding = true/false)). This is a temporary configuration option to enable migration and will be removed. (If47be, b/171394808)
  • Updated FontFamily.Resolver to integrate System-wide bold text accessibility setting (I6c1e7)
  • The consumeWindowInsets extension property of ComposeView allows developers to disable consumption of Android WindowInsets. This allows separate ComposeViews in the hierarchy to each apply WindowInsets without interfering with each other. (I0ef08, b/220943142)

Compose Material: v1.2.0-alpha07

April 6, 2022

androidx.compose.material:material-*:1.2.0-alpha07 is released. Version 1.2.0-alpha07 contains these commits.

Compose Material 3: v1.0.0-alpha09

April 6, 2022

androidx.compose.material3:material3:1.0.0-alpha09 is released. Version 1.0.0-alpha09 contains these commits.

New Features

  • Added Material 3 Switch API (I2c3ad)

API Changes

  • Added support for dropdown menus with text fields (aka 'exposed dropdown menus' or 'combo boxes'.) (I1b832)
  • Added shape parameter to MaterialTheme and Shape sub system. (I37426)
  • Added an expanded parameter to ExtendedFloatingActionButton to control whether the FAB is expanded or collapsed, with animations between each state. Added Extended FAB overload for extended FABs with trailing text for ExtendedFABs without icon. (Iba7f1)

Compose Runtime: v1.2.0-alpha07

April 6, 2022

androidx.compose.runtime:runtime-*:1.2.0-alpha07 is released. Version 1.2.0-alpha07 contains these commits.

API Changes

  • New function Snapshot.withoutReadObservation { ... } was added. It allows users to run the passed lambda without subscribing to the changes of the state values read during this block. You could find it useful in use cases when you want to benefit from the snapshot based thread safe write/reads, but want to be able to read the value without causing unnecessary recomposition or remeasure. (I9f365, b/214054486)

Compose UI: v1.2.0-alpha07

April 6, 2022

androidx.compose.ui:ui-*:1.2.0-alpha07 is released. Version 1.2.0-alpha07 contains these commits.

API Changes

  • New function Snapshot.withoutReadObservation { ... } was added. It allows users to run the passed lambda without subscribing to the changes of the state values read during this block. You could find it useful in use cases when you want to benefit from the snapshot based thread safe write/reads, but want to be able to read the value without causing unnecessary recomposition or remeasure. (I9f365, b/214054486)
  • The consumeWindowInsets extension property of ComposeView allows developers to disable consumption of Android WindowInsets. This allows separate ComposeViews in the hierarchy to each apply WindowInsets without interfering with each other. (I0ef08, b/220943142)
  • Added KeyboardType.Decimal as an alternative to Keyboard.Number for specifically including decimal separator in IME. (Iec4c8, b/209835363)
  • PointerEventType.Scroll and PointerEvent.scrollDelta are stable APIs now (I574c5, b/225669674)
  • Enable Nested Scroll interop between View and Compose for cooperating View classes. This means compose is now able to dispatch scroll deltas to a (cooperating) View parent. (I5d1ac, b/174348612)
  • Updated FontFamily.Resolver to integrate System-wide bold text accessibility setting (I6c1e7)
  • Font(AssetManager, String, ...) is deprecated, replaced with Font(String, AssetManager, ...). This is an experimental API. (I1c7a4)
  • Add new font descriptor Font(DeviceFontFamilyName) to optionally lookup system-installed fonts during font fallback chains. (I30468, b/219754572)
  • Added temporary compatibility configuration for includeFontPadding in TextStyle/ParagraphStyle. includeFontPadding can be changed via TextStyle(platformStyle = PlatformTextStyle(includeFontPadding = true/false)). This is a temporary configuration option to enable migration and will be removed. (If47be, b/171394808)
  • Add GoogleFont.Provider.isAvailableOnDevice extension for debugging help. (I64e31)
  • Add GoogleFont.Provider constructor for use with @ArrayRes (Ic5ee1, b/225984280)
  • Compose GoogleFont is now called Font(GoogleFont), API remains stable otherwise. (I125f2)

Bug Fixes

  • Added lint check to material/Scaffold to ensure that the inner padding is being used (Ifb111)

Core and Core-ktx: v1.8.0-alpha07

April 6, 2022

androidx.core:core:1.8.0-alpha07 and androidx.core:core-ktx:1.8.0-alpha07 are released. Version 1.8.0-alpha07 contains these commits.

Bug Fixes

  • TypefaceCompat will now respect both requested and loaded style information on API 29+. This is a behavior change when the loaded fonts are not FontWeight.Normal or FontWeight.Bold, as the actual loaded weight and style will be used. (#212, b/194553426)

External Contribution

  • Thanks RikkaW for ensuring we correctly apply Typeface weight in TypefaceCompat on API 29+. #212

Emoji2: v1.2.0-alpha03

April 6, 2022

androidx.emoji2:emoji2-*:1.2.0-alpha03 is released. Version 1.2.0-alpha03 contains these commits.

New Features

  • No changes from the last version (this release is to support the appcompat release).

Fragment: v1.5.0-alpha05

April 6, 2022

androidx.fragment:fragment:1.5.0-alpha05, androidx.fragment:fragment-ktx:1.5.0-alpha05, and androidx.fragment:fragment-testing:1.5.0-alpha05 are released. Version 1.5.0-alpha05 contains these commits.

API Changes

Lifecycle: v2.5.0-alpha06

April 6, 2022

androidx.lifecycle:lifecycle-*:2.5.0-alpha06 is released. Version 2.5.0-alpha06 contains these commits.

New Features

  • Add experimental MutableState overload to SavedStateHandle.saveable for parity with rememberSaveable (I38cfe, b/224565154)

API Changes

  • CreationExtras is now abstract instead of sealed. (Ib8a7a)

Bug Fixes

  • Fixed an IllegalStateException: Already attached to lifecycleOwner error caused by SavedStateHandleController. (I7ea47, b/215406268)

Media: v1.6.0-rc01

April 6, 2022

androidx.media:media:1.6.0-rc01 is released. Version 1.6.0-rc01 contains these commits.

Navigation: v2.5.0-alpha04

April 6, 2022

androidx.navigation:navigation-*:2.5.0-alpha04 is released. Version 2.5.0-alpha04 contains these commits.

API Changes

Bug Fixes

  • NavHost now depend on visibleEntries from the NavController to determine which entries to compose. This means that when using nested NavHost the inner NavHost should now properly animate out. (I4ba2b, b/225394514)
  • The visibleEntries StateFlow provided by NavController is now based on the entry max Lifecycle state instead of the current Lifecycle state. This means that even if the host lifecycle of the navController goes below STARTED, the list of visible entires will remain the same. (I9e2a8, b/225394514)
  • SavedStateViewFactory now supports using CreationExtras even when it was initialized with a SavedStateRegistryOwner. If extras are provided, the initialized arguments are ignored. (I6c43b, b/224844583)
  • NavDeepLink can now parse Uris with a single query parameter with no value. (I0efe8, b/148905489)
  • Empty string are now considered as valid arguments in deep links. (I70a0d, b/217399862)
  • Navigation Safe Args will no longer crash when using namespaces and no AndroidManifest.xml is present. (I17ccf, b/227229815)

Navigation: v2.4.2

April 6, 2022

androidx.navigation:navigation-*:2.4.2 is released. Version 2.4.2 contains these commits.

Bug Fixes

Recyclerview: v1.3.0-alpha02

April 6, 2022

androidx.recyclerview:recyclerview:1.3.0-alpha02 is released. Version 1.3.0-alpha02 contains these commits.

API Changes

  • Adds experimental BuildCompat methods for future SDKs (Iafd82, b/207528937)
  • New ConcatAdapter.getWrappedAdapterAndPosition method added to allow for retrieving wrapped adapter information in situations where you don't have a ViewHolder, such as a SpanSizeLookup (I2bd4c, b/191543920)

Bug Fixes

  • Integration with the new AndroidX PoolingContainer library (Ib89d2)
  • Adjusts the scroll distance for accessibility action (If74ae)

Savedstate: v1.2.0-alpha02

April 6, 2022

androidx.savedstate:savedstate:1.2.0-alpha02 and androidx.savedstate:savedstate-ktx:1.2.0-alpha02 are released. Version 1.2.0-alpha02 contains these commits.

New Features

  • You can now retrieve a previously registered SavedStateProvider from a SavedStateRegistry via getSavedStateProvider(). (I7ea47, b/215406268)

API Changes

  • The SavedStateRegistryOwner, SavedStateRegistryController, and Recreator classes have been rewritten in Kotlin. For SavedStateRegistryOwner, this is a source incompatible change for those classes written in Kotlin - you must now override the savedStateRegistry property rather than implement the previous getSavedStateRegistry() function. This is binary compatible and source compatible for implementations written in the Java programming language. (b/220191285)

Sqlite: v2.3.0-alpha02

April 6, 2022

androidx.sqlite:sqlite:2.3.0-alpha02, androidx.sqlite:sqlite-framework:2.3.0-alpha02, and androidx.sqlite:sqlite-ktx:2.3.0-alpha02 are released. Version 2.3.0-alpha02 contains these commits.

  • No significant changes since 2.3.0-alpha01

Wear Compose: v1.0.0-alpha20

April 6, 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha20, androidx.wear.compose:compose-material:1.0.0-alpha20, and androidx.wear.compose:compose-navigation:1.0.0-alpha20 are released. Version 1.0.0-alpha20 contains these commits.

New Features

  • Add edgeSwipeToDismiss modifier for SwipeToDismiss. Allows swipeToDismiss to be active only on the left edge of the viewport. Used when the center of the screen needs to be able to handle horizontal paging, such as 2-d scrolling a Map or swiping horizontally between pages.(I3fcec, b/200699800)

API Changes

  • Base implementation of CurvedModifiers , this opens the way to introduce ways to customize curved content (but no CurvedModifiers are provided yet, and the ability to create custom modifiers may be available later) (I9b8df)
  • EdgeSwipemodifier documentation and default values update for better understanding .(I6d00d)
  • Add PageIndicator slot into Scaffold. By adding PageIndicator directly into Scaffold we might assure that it will be correctly shown on circular devices. (Ia6042)
  • Remove default Icons from InlineSlider and Stepper parameters. This will help developers to be more attentive to localization and accessibility requirements. Usages of default icons were shown in demos and samples. (I7e6fd)
  • Replace Trailing and Leading parameter names with Start and End in TimeText (Iaac32)
  • We have added a SwipeToDismissBox overload with an onDismissed parameter to support the common usage of triggering a navigation event when the swipe gesture has completed. (I50353, b/226565726)
  • Removed ExperimentalWearMaterialApi annotations from TimeText usage (Ide520)
  • We have marked ScalingLazyList/Column scope and info interfaces as sealed as they are not intended for external developers to implement and this will allow us to add new members in them in future without binary breaking changes. (I7d99f)
  • We have added a new flingBehaviour property to the Picker and a PickerDefaults.flingBehaviour() method to enable configuration of the fling behavior such as adding RSB support. PickerState now implements the ScrollableState interface. (Ib89c7)

Bug Fixes

  • Update the Android Runtime (ART) baseline profile rules for Wear Compose libraries. ART can leverage profile rules on devices in order to compile ahead-of-time a specific subset of the application to improve the performance of the application. Note that this will have no effect on debuggable applications. (Iaa8ef)
  • Improve documentation (I2c051)

Wear Tiles: v1.1.0-alpha05

April 6, 2022

androidx.wear.tiles:tiles-*:1.1.0-alpha05 is released. Version 1.1.0-alpha05 contains these commits.

New Features

  • Added helper methods to convert LayoutElement to Layout, Timeline, TimelineEntry into these classes for easier Tiles building. (I2f6d1)
  • Colors object was added to the Material library to be passed in across components’ colors as a theme. (I0792c)

API Changes

  • Material Text component requires text passed in into constructor. This component can now be customized by setting weight. (I25dbd)
  • Removed constants from ChipDefaults that are not used in the public setters. (I7baed)
  • Removed getters from CompactChip & TitleChip that don't have matching setters. (I99e85)
  • Removed DEFAULT_PADDING from ProgressIndicatorDefaults. (Idabcd)
  • Material components now accept CharSequence for content description instead of String. (I5b21a)

Bug Fixes

  • Refactored setters implementation of optional parameters in Button. (Ib7135)
  • Font style variant has been added to the fonts in Typography. (I8dbc6)

Wear Watchface: v1.1.0-alpha05

April 6, 2022

androidx.wear.watchface:watchface-*:1.1.0-alpha05 is released. Version 1.1.0-alpha05 contains these commits.

New Features

  • You can now tell which data source sent a ComplicationData by inspecting ComplicationData.dataSource, some watch faces may use this to customize complication display. (I44a73)

API Changes

  • Renderer.CanvasRenderer and Renderer.GlesRenderer have been deprecated in favor of Renderer.CanvasRenderer2 and Renderer.GlesRenderer2 which support SharedAssets which are passed to the render methods. For java interop we've introduced ListenableCanvasRenderer2 and ListenableGlesRenderer2. (I31ffa)
  • Added @WatchFaceFlavorsExperimental ability to define flavors - preconfigured list of styled watchfaces (I04dd0)
  • Renderer.sharedAssets is now a StateFlow and we've removed the unused Renderer.SharedAssetsFactory (I12ac5)
  • UserStyleSchema.userStyleSettings is not deprecated anymore (Iba7e3)
  • We've added HeadlessWatchFaceClient.getUserStyleSchemaDigestHash which allows a HeadlessWatchFaceClient to avoid the relatively low overhead of passing the schema over AIDL before computing the digest hash. (I33597)
  • We've added isUserStyleSchemaStatic to WatchFaceMetadataClient which is true if and only if the UserStyleSchema can be relied on not to change unless the watch face APK is updated. (I45a3f)
  • We have added getDigestHash to UserStyleSchema which computes a digest hash of the schema. This can be used to efficiently determine if the UserStyleSchema has changed. (I2063d)
  • METADATA_KEY_DATA_SOURCE_DEFAULT_CONFIGURATION_SUPPORTED renamed to METADATA_KEY_DATA_SOURCE_DEFAULT_CONFIG_SUPPORTED (I9ba5d)
  • UserStyleSetting.OnWatchEditorData has been renamed to UserStyleSetting.WatchFaceEditorData, it contains data that's used purely by the on watch face editor. (If3afb)

WorkManager: v2.8.0-alpha02

April 6, 2022

androidx.work:work-*:2.8.0-alpha02 is released. Version 2.8.0-alpha02 contains these commits.

API Changes

  • Constraints can now be directly constructed rather than using Builder, which is convenient for Kotlin users. (Idc390, b/137568653)
  • Added the ability to check if WorkManager has been initialized. Also, added a new getConfiguration() API for library developers to get the configuration that WorkManager was initialized with. (I6eff3, b/212300336)