2023-06-22
Activity: v1.8.0-alpha06
June 21, 2023
androidx.activity:activity:1.8.0-alpha06, androidx.activity:activity-compose:1.8.0-alpha06, and androidx.activity:activity-ktx:1.8.0-alpha06 are released. Version 1.8.0-alpha06 contains these commits.
New Features
- The
OnBackPressedDispatchernow correctly cancels any callbacks that are removed during a Predictive Back Gesture. (I3f90f)
Annotation-Experimental: v1.3.1
June 21, 2023
androidx.annotation:annotation-experimental:1.3.1 is released. Version 1.3.1 contains these commits.
Bug Fixes
- Place annotation at the beginning of the modifier list when applying lint auto-fix. (b/251172715)
- Use lint check to discourage use of
androidx.annotation.RequiresOptInin Kotlin sources (b/241097743)
Benchmark: v1.2.0-alpha16
June 21, 2023
androidx.benchmark:benchmark-*:1.2.0-alpha16 is released. Version 1.2.0-alpha16 contains these commits.
API Changes
BaselineProfileRule.collectBaselineProfile()API has been renamed toBaselineProfileRule.collect(). (I4b665)
Bug Fixes
- Macrobenchmark support for
androidx.benchmark.profiling.mode = MethodTracing. (I7ad37, b/285912360) - Microbenchmark profiling moved to a separate phase, so it occurs in sequence after measurement, instead of replacing it.
MethodTracingtrace sections are also now included in the captured Perfetto trace, if present. (I9f657, b/285014599) - Add count measurement to
TraceSectionMetricwithMode.Sum. (Ic121a, b/264398606)
Browser: v1.6.0-beta01
June 21, 2023
androidx.browser:browser:1.6.0-beta01 is released with no changes since 1.6.0-alpha02. Version 1.6.0-beta01 contains these commits.
CameraX: v1.3.0-beta01
June 21, 2023
androidx.camera:camera-*:1.3.0-beta01 is released. Version 1.3.0-beta01 contains these commits.
API Changes
- Renamed the
ResolutionSelector.Builder#setHighResolutionEnabledFlag(int)function name tosetAllowedResolutionModeand renamed theResolutionSelector#HIGH_RESOLUTION_FLAG_OFF/ONconstants toPREFER_CAPTURE_RATE_OVER_HIGHER_RESOLUTION/PREFER_HIGHER_RESOLUTION_OVER_CAPTURE_RATE. (If84e8) - Removed deprecated API
ImageAnalysis.setTargetRotationDegrees(int),ImageCapture.setTargetRotationDegrees(int)andVideoCapture.setTargetRotationDegrees(int). (Id8e77) - The
DynamicRangeclass respresent the dynamic range of images. This can be used to select High Dynamic Range formats as the output ofVideoCapturethroughVideoCapture.Builder#setDynamicRange(). (Ib0377) - Added an
isImageAnalysisSupportedAPI to theExtensionsManagerwhich apps can determine if anImageAnalysisuse case can be bound along with Preview andImageCapturewhen Extensions are enabled. (I1bc63) - The new
VideoCapabilitiesclass obtained from theRecordercan be used to query supported dynamic ranges and qualities for video recording on the device.QualitySelector'sgetSupportedQualities()andisQualitySupported()methods are being deprecated. Please useVideoCapabilities'sgetSupportedQualities()andisQualitySupported()methods instead. (I04014) CameraController#setVideoCaptureTargetQuality()is renamed tosetVideoCaptureQualitySelectorand takes argumentQualitySelector, which provides more flexibility for video quality setup.CameraController#getVideoCaptureTargetQuality()is changed togetVideoCaptureQualitySelectoraccordingly. (I520ed)- Removed the experimental annotation for video features. The video features are now stable. (I1a113)
Bug Fixes
- Use torch as flash on Samsung SM-A320 models to improve the speed and the captured image quality in low light. (I6a022, b/286190938)
- Add
ImageFormat.JPEGformat support forImageProxy.toBitmap(). If the JPEG byte array cannot be decoded, anUnsupportedOperationExceptionwill be thrown. (I81958, b/282057603)
Compose Animation: v1.6.0-alpha01
June 21, 2023
androidx.compose.animation:animation-*:1.6.0-alpha01 is released. Version 1.6.0-alpha01 contains these commits.
New Features
- Enable
Modifier.animateContentSizeandAnimatedVisibilityto be fully integrated into the lookahead system by reporting the target size in the lookahead pass.
API Changes
- New property in
IntrinsincMeasureScopeand its implementations (e.g.MeasureScope) to indicate whether the current measure pass is a lookahead pass. (I7a812)
Bug Fixes
- Removed allocations from spring animations. (Ie9431)
- value parameter name for Enum.valueOf changed (Ia9b89)
- more thrown exceptions from enum valueOf (I818fe)
Compose Foundation: v1.6.0-alpha01
June 21, 2023
androidx.compose.foundation:foundation-*:1.6.0-alpha01 is released. Version 1.6.0-alpha01 contains these commits.
New Features
- Introduced a new
AnchoredDraggableAPI in Foundation. It can be used to build components that can be dragged between discrete states, like modal bottom sheets. This API replaces Material'sSwipeableAPI. (I4a2ed)
API Changes
- Support
InputConnection#requestCursorUpdates(I0c69b) - Introduced
scrollAnimationSpecto allow custom animation specs. UpdatedBringIntoViewCalculatortoBringIntoViewScroller. (Idb741) - Add
ResourceResolutionExceptiontype to wrap throwables thrown when attempting to load bitmap assets with a description of the asset path that failed to load. (I19f44, b/230166331, b/278424788) - Added semantics properties and actions to support text translation. (I4a6bc)
- Introduced a
BringIntoViewCalculatorAPI that can be used to customize how components likeScrollablerespond tobringIntoViewrequests. Changed the overload of scrollable to optionally accept an instance ofBringIntoViewCalculator. (Iaf5af)
Bug Fixes
- Added a lint check to warn if you are creating a
MutableInteractionSourcein composition without remembering it, similar to the lint checks for creating mutable state /Animatable. (I5daae) - Added support for selection by mouse. Touch based selection will expand by word, and shrink by character. (Ic0c6c, b/180639271)
- Added
FocusTargetModifierNodeinterface that can be used to create a customFocusTarget. (I9790e)
Compose Material: v1.6.0-alpha01
June 21, 2023
androidx.compose.material:material-*:1.6.0-alpha01 is released. Version 1.6.0-alpha01 contains these commits.
Behavior Changes
includeFontPaddingis nowfalseby default in Material 2 typography. The default line height style has also been changed toTrim.NoneandAlignment.Center. Please consult the API docs if you wish to customize these values, and see the blog post for an in-depth explainer of these changes. (Icabc3, I3f801, I04c03)
API Changes
- Material's
SwipeableAPIs have been deprecated. Please refer to Foundation'sAnchoredDraggableAPIs which are optimized for both simple and complex use cases. (I732e0)
Bug Fixes
BottomSheetState,ModalBottomSheetStateandBottomDrawerStatenow expose a progress property indicating the progress between the current (settled) anchor and the closest anchor in the swipe direction. (I1b317, b/271169225, b/276375124, b/276776071, b/270066861)
Compose Material 3: v1.1.1
June 21, 2023
androidx.compose.material3:material3:1.1.1 and androidx.compose.material3:material3-window-size-class:1.1.1 are released. Version 1.1.1 contains these commits.
Bug Fixes
- Adds call for
ModalBottomSheetwithoutwindowInsetparam for binary compatibility. (Ib7959) - Add window insets parameter to
ModalBottomSheet.- Scrim for
ModalBottomSheetmay now be drawn behind status bar withwindowInsetsset to zero - Updated default
ModalBottomSheetfunctionality to stay outside of system bars including navigation - Status bar inset handling is provided by drag handle in edge-to-edge mode.
BottomSheetDefaultsincludes window insets forBottomSheetWindow. (I31200, b/274872542, b/272973615, b/272334475, b/268432129, b/275849044, b/275486106, b/268433162)
- Scrim for
Compose Material 3: v1.2.0-alpha03
June 21, 2023
androidx.compose.material3:material3-*:1.2.0-alpha03 is released. Version 1.2.0-alpha03 contains these commits.
Behavior Changes
includeFontPaddingis nowfalseby default in Material 3 typography. The default line height style has also been changed toTrim.NoneandAlignment.Center. Please consult the API docs if you wish to customize these values, and see the blog post for an in-depth explainer of these changes. (I6266f, Icabc3)
New Features
- Added an overload for
RangeSliderthat is a stateful version of the component. CreatedRangeSliderStatethat holds all of the information for the current active track, the measurements of the components of theRangeSlider, and the drag and gesture logic. (I8c270) - Search bar now supports shadows via the newly added
shadowElevationparameter. (Ia5369, b/271040353) ColorSchemenow supports newSurfaceContainerroles.- Surface tonal elevation overlay can now be disabled with the
LocalTonalElevationEnabledcomposition local. (Ic203c, b/277774590)
API Changes
- Open the component colors constructors. (I8c4a6)
- Adding focusable parameter to both tooltip APIs, so that developers can have the tooltip consume touch events or not. Be cautious that this might break accessibility focus automatic traversal. (Ie32d8)
- Optimized accessibility for performance and memory allocations. (Iede48)
- Expose
DefaultSizeClassesand createStandardSizeClassesforWindowSizeClasses(I91838) - change
WindowWidth/HeightSizeClassto float value classes (Ie686e)
Bug Fixes
- Scaffold's
contentWindowInsetsparameter now respects consumed window insets. Note that the behavior of content padding based ontopBarandbottomBarremains unchanged when these parameters are provided. (I08b73, b/264601542) - Fix the alignment of the center top app bar to ensure that a long title doesn't render over the action icons or the navigation icon. (I4369f, b/236994621)
- Tab positions now enforce a minimum content width of 24.dp. This provides an accessible touch target for tab indicators. (Id8861)
- Dynamic color palettes from
dynamicLightColorSchemeanddynamicDarkColorSchemenow support new surface roles. (I1252e) - Updating the badge notification alignment to not clip when colliding with great grandparent. (Idf75a)
Compose Runtime: v1.6.0-alpha01
June 21, 2023
androidx.compose.runtime:runtime-*:1.6.0-alpha01 is released. Version 1.6.0-alpha01 contains these commits.
Bug Fixes
- Skip recomposition of subcompositions that will be removed. (Ieeb99, b/254645321)
- Reduced allocations when applying snapshots. (I65c09)
- Avoid calculating
readableHashinDerivedStateif snapshot wasn't modified (68c565)
Compose UI: v1.6.0-alpha01
June 21, 2023
androidx.compose.ui:ui-*:1.6.0-alpha01 is released. Version 1.6.0-alpha01 contains these commits.
New Features
- Support lookahead in
LazyList. This allowsLazyListin the lookahead pass to bypass any animation (e.g. item placement animation,AnimatedVisibility, etc) and to calculate the lookahead size and position for all children. After the lookahead pass, children ofLazyListcould animate independently to the reality as seen in the lookahead pass.
Behavior Change: includeFontPadding is now false by default in Compose
includeFontPadding is now false by default (21d806) in Compose.
includeFontPadding is a legacy attribute that controls whether or not to include extra padding on top of the first line and last line of the text to accommodate any characters that may extend above or below the text baselines.
Updating this Compose version will modify how all texts render in your UI by removing the extra padding on top of the first line and last line of every text you display.
Depending on your UI requirements and the font metrics you’re using, the changes should be minimal. However you might encounter blockers such as: - Broken screenshot tests. Fix the UI if required, and regenerate the golden images. - Text is slightly misaligned. Remove any custom negative paddings or add padding if required.
You can opt-in to includeFontPadding by using PlatformTextStyle for each text:
Text(
text = myText,
style = TextStyle(
lineHeight = 2.5.em,
platformStyle = PlatformTextStyle(
includeFontPadding = true/false
)
/* … */
)
)
You can opt-in to includeFontPadding for all your texts by configuring your Material styles. Note that parameter names will vary between M2 and M3.
val Typography = Typography( body1 = TextStyle( fontFamily = /* … */, fontSize = /* … */, platformStyle = PlatformTextStyle( includeFontPadding = false ) /* … */ ) )
MaterialTheme(
typography = Typography,
/* … */
)
You can find more about Compose includeFontPadding in developer documentation and this blog post.
If you experience issues/bugs connected with this change, file a bug using the issue tracker.
API Changes
- Support
InputConnection#requestCursorUpdates(I0c69b) - Added
FocusRequester.saveFocusedChildandFocusRequester.restoreFocusedChild(Ic557e, b/272302679, b/275157318) - Add
ResourceResolutionExceptiontype to wrap throwables thrown when attempting to load bitmap assets with a description of the asset path that failed to load. (I19f44, b/230166331, b/278424788) - Optimized accessibility for performance and memory allocations. (Iede48)
- Added semantics properties and actions to support text translation. (I4a6bc)
- New property in
IntrinsincMeasureScopeand its implementations (e.g.MeasureScope) to indicate whether the current measure pass is a lookahead pass. (I7a812) - Updated
DrawScopeapi to introduce the ability to retarget rendering into a different canvas with alternative density/layoutdirection and size. - Updated
DrawContextto support configuration of density and layout direction as well as making the canvas configurable. (Ie1f9b, b/225408150) - Added
Paragraph#fillBoundingBoxesto calculate character bounding boxes. (If30ee) - Added a set of common
MultiPreviews(Ia5a27)
Bug Fixes
- Added
FocusTargetModifierNodeinterface that can be used to create a customFocusTarget. (I9790e) - Renamed the
fallback*parameters on theTextMeasurerconstructor todefault*. (I940a5) - Renamed
SemanticsPropertyReceiver.performImeActiontoonImeActionandSemanticsActions.PerformImeActiontoOnImeAction. (I8e841) - Adds Wheel to differentiate a mouse scroll from a drag in nested scrolling (specifically, in
NestedScrollConnection). (Ie57e4) - Added
asComposePaintAPI to replacetoComposePaintas the returned object wraps the originalandroid.graphics.Paint(I22b4c) - Deprecate
SemanticsProperties.imeActionand replace with a new parameter toSemanticsActions.performImeAction. (I4a587) - Added support for selection by mouse. Touch based selection will expand by word, and shrink by character. (Ic0c6c, b/180639271)
Paragraphmethods that used to throwAssertionErrorfor out of bounds offsets now throwIllegalArgumentExceptionasMultiParagraphdoes. (I549d3, b/243338896)
Health Connect: v1.1.0-alpha02
June 21, 2023
androidx.health.connect:connect-client:1.1.0-alpha02 is released. Version 1.1.0-alpha02 contains these commits.
Bug Fixes
- Fixed
HealthDataSdkServiceleak (Ia3ba5) - Always redirect to the right
HealthConnectClient when requesting permissions on Android U.(I6415a)
Mediarouter: v1.6.0-alpha05
June 21, 2023
androidx.mediarouter:mediarouter:1.6.0-alpha05 and androidx.mediarouter:mediarouter-testing:1.6.0-alpha05 are released. Version 1.6.0-alpha05 contains these commits.
New Features
- Improve the
MediaRouteChooserDialogUI to handle the lack of discovered devices by providing written guidance to the user (I0cad9, I3d445).
Paging: v3.2.0-rc01
June 21, 2023
androidx.paging:paging-*:3.2.0-rc01 is released. Version 3.2.0-rc01 contains these commits.
External Contribution
- Thanks Veyndan for contributing to moving Paging away from Android/JVM specifics. (#553, #554, #555, #559)
privacysandbox sdkruntime: v1.0.0-alpha06
June 21, 2023
androidx.privacysandbox.sdkruntime:sdkruntime-client:1.0.0-alpha06 and androidx.privacysandbox.sdkruntime:sdkruntime-core:1.0.0-alpha06 are released. Version 1.0.0-alpha06 contains these commits.
New Features
- Per-SDK Storage and Databases support for SDKs loaded locally (in Application process).
SandboxedSdkProviderCompat#contextcustomized to provide Per-SDK Storage and Database support for SDKs in backcompat mode.
privacysandbox ui: v1.0.0-alpha04
June 21, 2023
androidx.privacysandbox.ui:ui-client:1.0.0-alpha04, androidx.privacysandbox.ui:ui-core:1.0.0-alpha04, and androidx.privacysandbox.ui:ui-provider:1.0.0-alpha04 are released. Version 1.0.0-alpha04 contains these commits.
New Features
- Introduce the
SdkActivityLauncher. An interface for allowing runtime enabled SDKs to launch activities. (I5b3dc)
Bug Fixes
- Fix
notifyZOrderChangedrace condition. Ensures that the UI provider is notified for all Z-order changes. The UI provider will not be explicitly notified if the Z-order of theSandboxedSdkViewis changed before openSession is invoked.
Room: v2.6.0-alpha02
June 21, 2023
androidx.room:room-*:2.6.0-alpha02 is released. Version 2.6.0-alpha02 contains these commits.
Room Gradle Plugin
This new release contains a new artifact for the Room Gradle Plugin with id androidx.room, which solves various existing issues in Room regarding having inputs and outputs of schemas via Gradle annotation processor options. The Room Gradle Plugin configures the project such that generated schemas that are consumed for auto-migrations and are output of the compile tasks are correctly configured to have reproducible and cacheable builds. The plugin offers a DSL to configure the base schema location:
room {
schemaDirectory("$projectDir/schemas/")
}
The plugin will then configure the Room compiler and the various compile tasks and its backends (javac, KAPT, KSP) to output schema files into flavored folders, i.e. schemas/flavorOneDebug/com.package.MyDatabase/1.json. As usual these files are checks-in into the repository to be used for validation and auto-migrations. Upon migrating to using the plugin instead of the annotation processor options the existing schema files must be copied to the generated flavor directories created by the plugin, this is a one-time migration operation that must be done manually. The schema documentation in developers.android.com will be updated in the future once feedback is addressed and the plugin reaches stable, so please give it a try.
API Changes
RoomDatabase.QueryCallbackhas been defined as a functional interface to allow SAM conversion usages. (Iab8ea, b/281008549)
Bug Fixes
- Resolving issue arising when instantiating the database in Robolectric after the migration of Room sources from Java to Kotlin. (Ic053c, b/274924903)
Room: v2.5.2
June 21, 2023
androidx.room:room-*:2.5.2 is released. Version 2.5.2 contains these commits.
Bug Fixes
- Fix an incompatibility issue with the kotlinx-metadata-jvm. (386d5c)
- Fix an issue that causes Room to throw an error when being used in a Robolectric test. (f79bea, b/274924903)
Sqlite: v2.4.0-alpha02
June 21, 2023
androidx.sqlite:sqlite:2.4.0-alpha02, androidx.sqlite:sqlite-framework:2.4.0-alpha02, and androidx.sqlite:sqlite-ktx:2.4.0-alpha02 are released with no changes. Version 2.4.0-alpha02 contains these commits.
Tracing: v1.3.0-alpha02
June 21, 2023
androidx.tracing:tracing:1.3.0-alpha02 and androidx.tracing:tracing-ktx:1.3.0-alpha02 are released with no changes from previous alpha. Version 1.3.0-alpha02 contains these commits.
Tracing Perfetto: v1.0.0-alpha17
June 21, 2023
androidx.tracing:tracing-perfetto:1.0.0-alpha17, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha17, and androidx.tracing:tracing-perfetto-handshake:1.0.0-alpha17 are released with no changes from previous alpha. Version 1.0.0-alpha17 contains these commits.
Wear Ongoing & Interactions: v1.1.0-alpha01
June 21, 2023
androidx.wear:wear-remote-interactions:1.1.0-alpha01 is released. Version 1.1.0-alpha01 contains these commits.
Bug Fixes
- Improved how completion and error handling is done in
RemoteActivityHelper. (I60d60)
External Contribution
- Remove Guava dependency from
wear-remote-interactionsand use smaller alternatives.
Wear: v1.3.0-rc01
June 21, 2023
androidx.wear:wear:1.3.0-rc01 is released with no changes since 1.3.0-beta01. Version 1.3.0-rc01 contains these commits.
Wear Compose: v1.3.0-alpha01
June 21, 2023
androidx.wear.compose:compose-*:1.3.0-alpha01 is released. Version 1.3.0-alpha01 contains these commits.
Bug Fixes
- As announced in
1.2.0-alpha07and1.2.0-alpha10, we are now changing theDefaultTextStyleto turn off font padding to be consistent across the Android Platform. This will address some cases of text clipping with large font sizes and may also impact screen layouts, so that screenshot tests need to be updated. For example, we see text clipping here (Ic6a86)
- It is no longer present when font padding is turned off:
- We have updated
wear.compose.foundationto be an API dependency ofwear.compose.material(I72004, b/285404743) - We have fixed a bug in
SwipeToDismissBox. Background and content keys are now passed to the remember block so that new modifiers are created when the content or background changes. (Ib876c, b/280392104) - We have updated
TimeTextto use the locale when choosing the format for 12 or 24 hour time. (If4a3d) - We have fixed an inconsistency in
SwipeToDismissBoxcontentScrimColordefault parameters. (I2d70f) - We have improved the motion handling in
SwipeToReveal. (I28fb7)
Known Issues
- Supporting user-configured font sizes is an accessibility requirement. We know that multiline Chips can lead to text-clipping when displayed with large font sizes, so we will be updating Chip in an early 1.3 alpha version to make height adjustments in those cases.
Wear Compose Material3: v1.0.0-alpha07
June 21, 2023
androidx.wear.compose:compose-material3:1.0.0-alpha07 is released. Version 1.0.0-alpha07 contains these commits.
New Features
- We have added the
Steppercomponent to our Compose for Wear OS Material 3 library. This is similar to the previous Material version, but omits range semantics by default, following developer feedback. We provideModifier.rangeSemanticsthe cases where range semantics are required. (Ic39fd) - We have added
curvedTextto our Compose for Wear OS Material 3 library. (Ia8ae3)
Bug Fixes
- We have update
wear.compose.foundationto be an API dependency ofwear.compose.material3(I72004, b/285404743)
wear protolayout: v1.0.0-beta01
June 21, 2023
androidx.wear.protolayout:protolayout-*:1.0.0-beta01 is released. Version 1.0.0-beta01 contains these commits.
New Features
- Allow setting clock for time binding tests. (I05622)
API Changes
PlatformDataReceiver.onData()andStateBuilders.Builder.addKeyToValueMappingnow accept type-safe mapping ofDynamicDataKeytoDynamicDataValuerather than unsafe generics. That means thatDynamicDataValueis now typed with itsDynamicType.HEART_RATE_ACCURACY_Xconstants moved to the root ofPlatformHealthSources, to match other Android constants positioning.HEART_RATE_ACCURACY_Xint constants are now used directly inDynamicHeartRateAccuracy.constant()andDynamicHeartRateAccuracy.dynamicDataValueOf()instead of value constant. (I82ff5)- The
PlatformHealthSources.Constantsclass was instantiable by mistake. This has been fixed now. (Icb849) PlatformTimeUpdateNotifier#setReceivernow receivesRunnableinstead ofSupplierfunction andExecutorto notify on. (I9d938)- We have changed the parameter type in the
PlatformTimeUpdateNotifier#setReceiverfromCallabletoSupplier. (I664bf) CompactChipandTitleChipnow support adding an icon to it. (I5a01e)
Bug Fixes
- Update Prop messages with dynamic fields to use oneof instead (I81739)
- Reuse setters implementation for overloads that have setters (Ied70c)
- Properly record fingerprints in setters that have overloads (I86ed2)
Wear Tiles: v1.2.0-beta01
June 21, 2023
androidx.wear.tiles:tiles-*:1.2.0-beta01 is released with no changes. Version 1.2.0-beta01 contains these commits.
Wear Watchface: v1.2.0-alpha09
June 21, 2023
androidx.wear.watchface:watchface-*:1.2.0-alpha09 is released. Version 1.2.0-alpha09 contains these commits.
New Features
RangedValueComplicationData.Buildernow acceptsDynamicFloat, and a newDynamicComplicationTextis available as a subclass ofComplicationText, both of which can utilize dynamic expressions as well as platform bindings that are updated at 1hz on supported Wear 4 devices.
API Changes
- Added dynamic types for daily distance, daily calories and daily floors. Keys for platform health sources are now under
PlatformHealthSources.Keys(Ib7637) - Implement
PlatformDataProviderto provide heart rate and daily steps.SensorGatewayinterface is removed from public API. (I55b84) - Rename
StateEntryValuetoDynamicDataValue, and update the state APIs to use theDynamicDataKey. (If1c01) - Add
AppDataKeyfor accessing app pushed state; AddPlatformDataKeyfor accessing platform data; Add namespace support inStateStore. (I7985e) enable/disablePlatformSourcemethods have been removed fromDynamicTypeEvaluator. The caller should be responsible for updates. (I78c6d)- Allow capping the size of bound data types. (Ie2966)
WindowManager: v1.2.0-alpha03
June 21, 2023
androidx.window:window-*:1.2.0-alpha03 is released. Version 1.2.0-alpha03 contains these commits.
New Features
- Removing deprecated APIs from the API surface.
- Add APIs to support concurrent displays.
- Add a property to opt out of forced resize override.
- Add property to opt out of min aspect ratio override.
- Stabilize
ActivityEmbeddingRuleto support unit testing around Activity Embedding.
API Changes
Bug Fixes
- Adding opt-out compat property for force resize override (Ie7ab1)
- Removes
SESSION_STATE_CONTENT_INVISIBLEfrom extensions interface. (I6ed19) - Stabilize
ActivityEmbeddingRuleto support unit testing around Activity embedding. (I8d6b6) - Adding opt-out compat property for min aspect ratio override. (I66390)
- Removes deprecated WindowArea API's (Ieb67c)
- Rename orientation request loop property to
PROPERTY_COMPAT_ALLOW_IGNORING_ORIENTATION_REQUEST_WHEN_LOOP_DETECTED. (Ie2fbd) - Updates window area session constant names (I83675)
- Adding opt-out compat property that ignores orientation request loop when detected (I0a7a2)
- Add
WindowAreaComponent#STATUS_ACTIVEto signify that the feature is already active. (I62bc3) - Add
RearDisplayPresentationModeAPIs (I0401c) - Remove background color API for stable. (I34c3e)
- Hide Window Area APIs. (I39de0)
- Add methods to override the
SplitInfoinSplitController. Add test methods to create double forSplitInfoandActivityStack. (Icd69f) - Make tag optional for
ActivityRule.Builder. (Ib0b44) - Remove
RatioSplitType,ExpandContainersSplitandHingeSplitType. They areSplitTypenow.- Replace
#splitEqually(),#expandContainers()and#splitByHingeto constantSplitType SPLIT_TYPE_EQUAL,SPLIT_TYPE_EXPANDandSPLIT_TYPE_HINGE - Remove the functionality to set fallback type of hinge split type. If the hinge split type cannot be applied due to the current device or window state, it fallbacks to split the parent task container equally. Use
SplitController#setSplitAttributesCalculatorto customize the fallback split type. (Ifcc59)
- Replace
- Deprecate
add/removeSplitCallback- Move
add/removeSplitCallbacktoSplitControllerCallbackAdapter - Add
Flowsupport to getSplitInfolist (I7f1b6)
- Move
- Add a test rule for
ActivityEmbeddingController(I42e9b) - Renaming
ActivityOptionsCompattoActivityEmbeddingOptions(I89301) - Add
splitSupportStatusto indicate if Activity embedding is available. (I10024) - Introduce
SplitAttributes.BackgroundColorto better represent theDEFAULTvalue. Clarify that non-opaque animation background color is not supported, so any non-opaque colors will be treated as the default, which means to use the current theme window background color. (Ic6b95) - Replace
alwaysAllow()andalwaysDisallow()withALWAYS_ALLOWandALWAYS_DISALLOW. (I3057b) - Add APIs for
SplitRule,SplitAttributes,SplitAttributesCalculator. (I92d23) - Add
TestActivityStackto createActivityStackfor testing- Add
TestSplitInfoto createSplitInfofor testing. (I8e779)
- Add
- Add a way to create fake
SplitAttributesCalculatorParamsso that developers can verify their customizedSplitAttributesCalculator(Id4a6e) - Add
WindowMetricsCalculator#computeCurrentWindowMetrics(@UiContext context: Context)andWindowMetricsCalculator#computeMaximumWindowMetrics(@UiContext context: Context)(I66c7f)

