Le geste back Android part du bord même de l'écran : l'OS intercepte le geste avant le SwipeBack custom (zone de départ > 24 dp) et, sans callback back enregistré, l'activité est envoyée en arrière-plan vers le launcher au lieu de revenir à l'écran précédent. Enregistre un BackHandler par écran (Historique et Résultats retournent à l'accueil, la partie ouvre le dialogue d'abandon) et active le predictive back dans le manifest.
46 lines
3.0 KiB
TOML
46 lines
3.0 KiB
TOML
[versions]
|
|
|
|
kotlin = "2.4.10"
|
|
agp = "9.1.1"
|
|
compose-multiplatform = "1.12.0"
|
|
material3 = "1.12.0-alpha03"
|
|
androidx-activityCompose = "1.12.0"
|
|
androidx-fragmentKtx = "1.8.9"
|
|
kotlinx-datetime = "0.8.0"
|
|
kotlinx-serialization = "1.11.0"
|
|
kotlinx-coroutines = "1.11.0"
|
|
okio = "3.18.1"
|
|
gms-games-v2 = "22.0.0"
|
|
|
|
[libraries]
|
|
|
|
compose-runtime = { module = "org.jetbrains.compose.runtime:runtime", version.ref = "compose-multiplatform" }
|
|
compose-ui = { module = "org.jetbrains.compose.ui:ui", version.ref = "compose-multiplatform" }
|
|
compose-foundation = { module = "org.jetbrains.compose.foundation:foundation", version.ref = "compose-multiplatform" }
|
|
compose-resources = { module = "org.jetbrains.compose.components:components-resources", version.ref = "compose-multiplatform" }
|
|
compose-ui-tooling-preview = { module = "org.jetbrains.compose.ui:ui-tooling-preview", version.ref = "compose-multiplatform" }
|
|
compose-ui-tooling = { module = "org.jetbrains.compose.ui:ui-tooling", version.ref = "compose-multiplatform" }
|
|
compose-ui-test = { module = "org.jetbrains.compose.ui:ui-test", version.ref = "compose-multiplatform" }
|
|
compose-backhandler = { module = "org.jetbrains.compose.ui:ui-backhandler", version.ref = "compose-multiplatform" }
|
|
compose-material3 = { module = "org.jetbrains.compose.material3:material3", version.ref = "material3" }
|
|
androidx-activityCompose = { module = "androidx.activity:activity-compose", version.ref = "androidx-activityCompose" }
|
|
androidx-fragmentKtx = { module = "androidx.fragment:fragment-ktx", version.ref = "androidx-fragmentKtx" }
|
|
kotlinx-datetime = { module = "org.jetbrains.kotlinx:kotlinx-datetime", version.ref = "kotlinx-datetime" }
|
|
kotlinx-serialization-json = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "kotlinx-serialization" }
|
|
kotlinx-coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "kotlinx-coroutines" }
|
|
kotlinx-coroutines-test = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-test", version.ref = "kotlinx-coroutines" }
|
|
okio = { module = "com.squareup.okio:okio", version.ref = "okio" }
|
|
okio-fakefilesystem = { module = "com.squareup.okio:okio-fakefilesystem", version.ref = "okio" }
|
|
gms-games-v2 = { module = "com.google.android.gms:play-services-games-v2", version.ref = "gms-games-v2" }
|
|
kotlinx-coroutines-play-services = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-play-services", version.ref = "kotlinx-coroutines" }
|
|
|
|
[plugins]
|
|
|
|
kotlin-multiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" }
|
|
android-kmp-library = { id = "com.android.kotlin.multiplatform.library", version.ref = "agp" }
|
|
kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
|
|
compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
|
|
compose-multiplatform = { id = "org.jetbrains.compose", version.ref = "compose-multiplatform" }
|
|
android-application = { id = "com.android.application", version.ref = "agp" }
|
|
kotlinx-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
|