From a13ed148aa9181da02f9675375261afd3a9f6a07 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Scott=20Rayapoull=C3=A9?= Date: Fri, 31 Jan 2025 16:40:19 +0100 Subject: [PATCH 1/2] chore(compose): Use beta bom of compose --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index f32b047ec..92a6213f6 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -45,7 +45,7 @@ androidx-activity-compose = { module = "androidx.activity:activity-compose", ver # https://androidx.tech/artifacts/appcompat/appcompat-resources/ androidx-appCompat = { module = "androidx.appcompat:appcompat", version.ref = "androidx-appCompat" } androidx-appCompat-resources = { module = "androidx.appcompat:appcompat-resources", version.ref = "androidx-appCompat" } -androidx-compose-bom = { module = "androidx.compose:compose-bom", version.ref = "androidx-compose-bom" } +androidx-compose-bom = { module = "androidx.compose:compose-bom-beta", version.ref = "androidx-compose-bom" } androidx-compose-animation-graphics = { module = "androidx.compose.animation:animation-graphics" } androidx-compose-foundation = { module = "androidx.compose.foundation:foundation" } androidx-compose-foundation-layout = { module = "androidx.compose.foundation:foundation-layout" } From 3aa24ade99be59850d9b15de0d30b26aa1eb46b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Scott=20Rayapoull=C3=A9?= Date: Fri, 31 Jan 2025 16:57:53 +0100 Subject: [PATCH 2/2] fix: clean warnings and deprecated code from beta upgrade --- .../spark/catalog/icons/IconExampleScreen.kt | 2 +- .../spark/catalog/icons/IconsScreen.kt | 4 +- .../dependencies/releaseRuntimeClasspath.txt | 77 +++++++++--------- .../dependencies/releaseRuntimeClasspath.txt | 79 ++++++++++--------- .../spark/components/rating/RatingSmall.kt | 6 +- .../adevinta/spark/tools/modifiers/Layout.kt | 5 ++ .../spark/tools/modifiers/Semantics.kt | 4 +- 7 files changed, 91 insertions(+), 86 deletions(-) diff --git a/catalog/src/main/kotlin/com/adevinta/spark/catalog/icons/IconExampleScreen.kt b/catalog/src/main/kotlin/com/adevinta/spark/catalog/icons/IconExampleScreen.kt index 1fe9fe6ea..a2a301f89 100644 --- a/catalog/src/main/kotlin/com/adevinta/spark/catalog/icons/IconExampleScreen.kt +++ b/catalog/src/main/kotlin/com/adevinta/spark/catalog/icons/IconExampleScreen.kt @@ -99,7 +99,7 @@ internal fun IconExampleScreen( modifier = Modifier .size(128.dp) .sharedElement( - state = sharedTransitionScope.rememberSharedContentState(key = "icon-$name"), + sharedContentState = sharedTransitionScope.rememberSharedContentState(key = "icon-$name"), animatedVisibilityScope = animatedContentScope, ), atEnd = atEnd, diff --git a/catalog/src/main/kotlin/com/adevinta/spark/catalog/icons/IconsScreen.kt b/catalog/src/main/kotlin/com/adevinta/spark/catalog/icons/IconsScreen.kt index 17eb39ef8..b28c5bc40 100644 --- a/catalog/src/main/kotlin/com/adevinta/spark/catalog/icons/IconsScreen.kt +++ b/catalog/src/main/kotlin/com/adevinta/spark/catalog/icons/IconsScreen.kt @@ -207,7 +207,9 @@ public fun IconsScreen( contentDescription = null, modifier = Modifier .sharedElement( - state = sharedTransitionScope.rememberSharedContentState(key = "icon-$iconName"), + sharedContentState = sharedTransitionScope.rememberSharedContentState( + key = "icon-$iconName", + ), animatedVisibilityScope = animatedContentScope, ) .size(40.dp), diff --git a/spark-icons/dependencies/releaseRuntimeClasspath.txt b/spark-icons/dependencies/releaseRuntimeClasspath.txt index 23e6e07ed..c53cd523f 100644 --- a/spark-icons/dependencies/releaseRuntimeClasspath.txt +++ b/spark-icons/dependencies/releaseRuntimeClasspath.txt @@ -1,54 +1,54 @@ androidx.activity:activity-ktx:1.7.0 androidx.activity:activity:1.7.0 androidx.annotation:annotation-experimental:1.4.1 -androidx.annotation:annotation-jvm:1.8.1 -androidx.annotation:annotation:1.8.1 +androidx.annotation:annotation-jvm:1.9.1 +androidx.annotation:annotation:1.9.1 androidx.appcompat:appcompat-resources:1.7.0 androidx.arch.core:core-common:2.2.0 androidx.arch.core:core-runtime:2.2.0 androidx.autofill:autofill:1.0.0 -androidx.collection:collection-jvm:1.4.4 -androidx.collection:collection-ktx:1.4.4 -androidx.collection:collection:1.4.4 -androidx.compose.runtime:runtime-android:1.7.7 -androidx.compose.runtime:runtime-saveable-android:1.7.7 -androidx.compose.runtime:runtime-saveable:1.7.7 -androidx.compose.runtime:runtime:1.7.7 -androidx.compose.ui:ui-android:1.7.7 -androidx.compose.ui:ui-geometry-android:1.7.7 -androidx.compose.ui:ui-geometry:1.7.7 -androidx.compose.ui:ui-graphics-android:1.7.7 -androidx.compose.ui:ui-graphics:1.7.7 -androidx.compose.ui:ui-text-android:1.7.7 -androidx.compose.ui:ui-text:1.7.7 -androidx.compose.ui:ui-unit-android:1.7.7 -androidx.compose.ui:ui-unit:1.7.7 -androidx.compose.ui:ui-util-android:1.7.7 -androidx.compose.ui:ui-util:1.7.7 -androidx.compose.ui:ui:1.7.7 -androidx.compose:compose-bom:2025.01.01 +androidx.collection:collection-jvm:1.5.0-beta03 +androidx.collection:collection-ktx:1.5.0-beta03 +androidx.collection:collection:1.5.0-beta03 +androidx.compose.runtime:runtime-android:1.8.0-beta01 +androidx.compose.runtime:runtime-saveable-android:1.8.0-beta01 +androidx.compose.runtime:runtime-saveable:1.8.0-beta01 +androidx.compose.runtime:runtime:1.8.0-beta01 +androidx.compose.ui:ui-android:1.8.0-beta01 +androidx.compose.ui:ui-geometry-android:1.8.0-beta01 +androidx.compose.ui:ui-geometry:1.8.0-beta01 +androidx.compose.ui:ui-graphics-android:1.8.0-beta01 +androidx.compose.ui:ui-graphics:1.8.0-beta01 +androidx.compose.ui:ui-text-android:1.8.0-beta01 +androidx.compose.ui:ui-text:1.8.0-beta01 +androidx.compose.ui:ui-unit-android:1.8.0-beta01 +androidx.compose.ui:ui-unit:1.8.0-beta01 +androidx.compose.ui:ui-util-android:1.8.0-beta01 +androidx.compose.ui:ui-util:1.8.0-beta01 +androidx.compose.ui:ui:1.8.0-beta01 +androidx.compose:compose-bom-beta:2025.01.01 androidx.concurrent:concurrent-futures:1.1.0 androidx.core:core-ktx:1.12.0 androidx.core:core:1.12.0 androidx.customview:customview-poolingcontainer:1.0.0 -androidx.emoji2:emoji2:1.2.0 +androidx.emoji2:emoji2:1.4.0 androidx.graphics:graphics-path:1.0.1 androidx.interpolator:interpolator:1.0.0 -androidx.lifecycle:lifecycle-common-jvm:2.8.3 -androidx.lifecycle:lifecycle-common:2.8.3 -androidx.lifecycle:lifecycle-livedata-core:2.8.3 -androidx.lifecycle:lifecycle-process:2.8.3 -androidx.lifecycle:lifecycle-runtime-android:2.8.3 -androidx.lifecycle:lifecycle-runtime-compose-android:2.8.3 -androidx.lifecycle:lifecycle-runtime-compose:2.8.3 -androidx.lifecycle:lifecycle-runtime-ktx-android:2.8.3 -androidx.lifecycle:lifecycle-runtime-ktx:2.8.3 -androidx.lifecycle:lifecycle-runtime:2.8.3 -androidx.lifecycle:lifecycle-viewmodel-android:2.8.3 -androidx.lifecycle:lifecycle-viewmodel-ktx:2.8.3 -androidx.lifecycle:lifecycle-viewmodel-savedstate:2.8.3 -androidx.lifecycle:lifecycle-viewmodel:2.8.3 -androidx.profileinstaller:profileinstaller:1.3.1 +androidx.lifecycle:lifecycle-common-jvm:2.8.7 +androidx.lifecycle:lifecycle-common:2.8.7 +androidx.lifecycle:lifecycle-livedata-core:2.8.7 +androidx.lifecycle:lifecycle-process:2.8.7 +androidx.lifecycle:lifecycle-runtime-android:2.8.7 +androidx.lifecycle:lifecycle-runtime-compose-android:2.8.7 +androidx.lifecycle:lifecycle-runtime-compose:2.8.7 +androidx.lifecycle:lifecycle-runtime-ktx-android:2.8.7 +androidx.lifecycle:lifecycle-runtime-ktx:2.8.7 +androidx.lifecycle:lifecycle-runtime:2.8.7 +androidx.lifecycle:lifecycle-viewmodel-android:2.8.7 +androidx.lifecycle:lifecycle-viewmodel-ktx:2.8.7 +androidx.lifecycle:lifecycle-viewmodel-savedstate:2.8.7 +androidx.lifecycle:lifecycle-viewmodel:2.8.7 +androidx.profileinstaller:profileinstaller:1.4.0 androidx.savedstate:savedstate-ktx:1.2.1 androidx.savedstate:savedstate:1.2.1 androidx.startup:startup-runtime:1.1.1 @@ -66,3 +66,4 @@ org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.7.3 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.7.3 org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.3 org.jetbrains:annotations:23.0.0 +org.jspecify:jspecify:1.0.0 diff --git a/spark/dependencies/releaseRuntimeClasspath.txt b/spark/dependencies/releaseRuntimeClasspath.txt index 85ffef7fe..58a664e99 100644 --- a/spark/dependencies/releaseRuntimeClasspath.txt +++ b/spark/dependencies/releaseRuntimeClasspath.txt @@ -2,54 +2,54 @@ androidx.activity:activity-compose:1.10.0 androidx.activity:activity-ktx:1.10.0 androidx.activity:activity:1.10.0 androidx.annotation:annotation-experimental:1.4.1 -androidx.annotation:annotation-jvm:1.8.1 -androidx.annotation:annotation:1.8.1 +androidx.annotation:annotation-jvm:1.9.1 +androidx.annotation:annotation:1.9.1 androidx.appcompat:appcompat-resources:1.7.0 androidx.appcompat:appcompat:1.7.0 androidx.arch.core:core-common:2.2.0 androidx.arch.core:core-runtime:2.2.0 androidx.autofill:autofill:1.0.0 -androidx.collection:collection-jvm:1.4.4 -androidx.collection:collection-ktx:1.4.4 -androidx.collection:collection:1.4.4 -androidx.compose.animation:animation-android:1.7.7 -androidx.compose.animation:animation-core-android:1.7.7 -androidx.compose.animation:animation-core:1.7.7 -androidx.compose.animation:animation-graphics-android:1.7.7 -androidx.compose.animation:animation-graphics:1.7.7 -androidx.compose.animation:animation:1.7.7 -androidx.compose.foundation:foundation-android:1.7.7 -androidx.compose.foundation:foundation-layout-android:1.7.7 -androidx.compose.foundation:foundation-layout:1.7.7 -androidx.compose.foundation:foundation:1.7.7 +androidx.collection:collection-jvm:1.5.0-beta03 +androidx.collection:collection-ktx:1.5.0-beta03 +androidx.collection:collection:1.5.0-beta03 +androidx.compose.animation:animation-android:1.8.0-beta01 +androidx.compose.animation:animation-core-android:1.8.0-beta01 +androidx.compose.animation:animation-core:1.8.0-beta01 +androidx.compose.animation:animation-graphics-android:1.8.0-beta01 +androidx.compose.animation:animation-graphics:1.8.0-beta01 +androidx.compose.animation:animation:1.8.0-beta01 +androidx.compose.foundation:foundation-android:1.8.0-beta01 +androidx.compose.foundation:foundation-layout-android:1.8.0-beta01 +androidx.compose.foundation:foundation-layout:1.8.0-beta01 +androidx.compose.foundation:foundation:1.8.0-beta01 androidx.compose.material3:material3-android:1.3.1 androidx.compose.material3:material3-window-size-class-android:1.3.1 androidx.compose.material3:material3-window-size-class:1.3.1 androidx.compose.material3:material3:1.3.1 androidx.compose.material:material-icons-core-android:1.7.7 androidx.compose.material:material-icons-core:1.7.7 -androidx.compose.material:material-ripple-android:1.7.7 -androidx.compose.material:material-ripple:1.7.7 -androidx.compose.runtime:runtime-android:1.7.7 -androidx.compose.runtime:runtime-saveable-android:1.7.7 -androidx.compose.runtime:runtime-saveable:1.7.7 -androidx.compose.runtime:runtime:1.7.7 -androidx.compose.ui:ui-android:1.7.7 -androidx.compose.ui:ui-geometry-android:1.7.7 -androidx.compose.ui:ui-geometry:1.7.7 -androidx.compose.ui:ui-graphics-android:1.7.7 -androidx.compose.ui:ui-graphics:1.7.7 -androidx.compose.ui:ui-text-android:1.7.7 -androidx.compose.ui:ui-text-google-fonts:1.7.7 -androidx.compose.ui:ui-text:1.7.7 -androidx.compose.ui:ui-tooling-preview-android:1.7.7 -androidx.compose.ui:ui-tooling-preview:1.7.7 -androidx.compose.ui:ui-unit-android:1.7.7 -androidx.compose.ui:ui-unit:1.7.7 -androidx.compose.ui:ui-util-android:1.7.7 -androidx.compose.ui:ui-util:1.7.7 -androidx.compose.ui:ui:1.7.7 -androidx.compose:compose-bom:2025.01.01 +androidx.compose.material:material-ripple-android:1.8.0-beta01 +androidx.compose.material:material-ripple:1.8.0-beta01 +androidx.compose.runtime:runtime-android:1.8.0-beta01 +androidx.compose.runtime:runtime-saveable-android:1.8.0-beta01 +androidx.compose.runtime:runtime-saveable:1.8.0-beta01 +androidx.compose.runtime:runtime:1.8.0-beta01 +androidx.compose.ui:ui-android:1.8.0-beta01 +androidx.compose.ui:ui-geometry-android:1.8.0-beta01 +androidx.compose.ui:ui-geometry:1.8.0-beta01 +androidx.compose.ui:ui-graphics-android:1.8.0-beta01 +androidx.compose.ui:ui-graphics:1.8.0-beta01 +androidx.compose.ui:ui-text-android:1.8.0-beta01 +androidx.compose.ui:ui-text-google-fonts:1.8.0-beta01 +androidx.compose.ui:ui-text:1.8.0-beta01 +androidx.compose.ui:ui-tooling-preview-android:1.8.0-beta01 +androidx.compose.ui:ui-tooling-preview:1.8.0-beta01 +androidx.compose.ui:ui-unit-android:1.8.0-beta01 +androidx.compose.ui:ui-unit:1.8.0-beta01 +androidx.compose.ui:ui-util-android:1.8.0-beta01 +androidx.compose.ui:ui-util:1.8.0-beta01 +androidx.compose.ui:ui:1.8.0-beta01 +androidx.compose:compose-bom-beta:2025.01.01 androidx.concurrent:concurrent-futures:1.1.0 androidx.constraintlayout:constraintlayout-compose-android:1.1.0 androidx.constraintlayout:constraintlayout-compose:1.1.0 @@ -61,8 +61,8 @@ androidx.cursoradapter:cursoradapter:1.0.0 androidx.customview:customview-poolingcontainer:1.0.0 androidx.customview:customview:1.0.0 androidx.drawerlayout:drawerlayout:1.0.0 -androidx.emoji2:emoji2-views-helper:1.3.0 -androidx.emoji2:emoji2:1.3.0 +androidx.emoji2:emoji2-views-helper:1.4.0 +androidx.emoji2:emoji2:1.4.0 androidx.exifinterface:exifinterface:1.3.7 androidx.fragment:fragment:1.5.4 androidx.graphics:graphics-path:1.0.1 @@ -118,3 +118,4 @@ org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.8.1 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.8.1 org.jetbrains.kotlinx:kotlinx-coroutines-core:1.8.1 org.jetbrains:annotations:23.0.0 +org.jspecify:jspecify:1.0.0 diff --git a/spark/src/main/kotlin/com/adevinta/spark/components/rating/RatingSmall.kt b/spark/src/main/kotlin/com/adevinta/spark/components/rating/RatingSmall.kt index d806ddaa1..22295d336 100644 --- a/spark/src/main/kotlin/com/adevinta/spark/components/rating/RatingSmall.kt +++ b/spark/src/main/kotlin/com/adevinta/spark/components/rating/RatingSmall.kt @@ -32,7 +32,6 @@ import androidx.compose.runtime.remember import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.platform.LocalConfiguration -import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.res.pluralStringResource import androidx.compose.ui.res.stringResource import androidx.compose.ui.semantics.contentDescription @@ -205,10 +204,7 @@ internal enum class RatingSize { } @Composable -internal fun firstLocale(): Locale { - LocalConfiguration.current - return LocalContext.current.resources.configuration.locales[0] -} +internal fun firstLocale(): Locale = LocalConfiguration.current.locales[0] @Composable @Preview( diff --git a/spark/src/main/kotlin/com/adevinta/spark/tools/modifiers/Layout.kt b/spark/src/main/kotlin/com/adevinta/spark/tools/modifiers/Layout.kt index 1abe30873..33fd70c0e 100644 --- a/spark/src/main/kotlin/com/adevinta/spark/tools/modifiers/Layout.kt +++ b/spark/src/main/kotlin/com/adevinta/spark/tools/modifiers/Layout.kt @@ -19,6 +19,8 @@ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. */ +@file:Suppress("DEPRECATION") + package com.adevinta.spark.tools.modifiers import androidx.compose.foundation.layout.Box @@ -89,6 +91,9 @@ private class IgnoreParentHorizontalPaddingModifierNode(var horizontalPadding: D * https://cs.android.com/androidx/platform/frameworks/support/+/androidx-main:compose/ui/ui/integration-tests/ui-demos/src/main/java/androidx/compose/ui/demos/autofill/ExplicitAutofillTypesDemo.kt * TODO-@Soulcramer (03-51-2023): Replace by official implementation on b/176949051 */ +@Deprecated( + "The official impl is now available! Use the new semantics-based API and androidx.compose.ui.autofill.ContentType instead.", +) @Composable @ExperimentalComposeUiApi public fun Autofill( diff --git a/spark/src/main/kotlin/com/adevinta/spark/tools/modifiers/Semantics.kt b/spark/src/main/kotlin/com/adevinta/spark/tools/modifiers/Semantics.kt index 8f3030984..21ab1cbad 100644 --- a/spark/src/main/kotlin/com/adevinta/spark/tools/modifiers/Semantics.kt +++ b/spark/src/main/kotlin/com/adevinta/spark/tools/modifiers/Semantics.kt @@ -22,8 +22,8 @@ package com.adevinta.spark.tools.modifiers import androidx.compose.ui.Modifier -import androidx.compose.ui.semantics.invisibleToUser +import androidx.compose.ui.semantics.hideFromAccessibility import androidx.compose.ui.semantics.semantics public fun Modifier.invisibleSemantic(): Modifier = - semantics { invisibleToUser() } + semantics { hideFromAccessibility() }