diff --git a/config/lint/lint.xml b/config/lint/lint.xml index f6fcd84..5eab7c7 100644 --- a/config/lint/lint.xml +++ b/config/lint/lint.xml @@ -2,4 +2,6 @@ + + \ No newline at end of file diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 3685d81..1a584d6 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,6 +1,6 @@ [versions] leakcanaryAndroid = "2.14" -modo = "0.9.0-dev8" +modo = "0.9.0-dev9" androidGradlePlugin = "8.4.0" detektComposeVersion = "0.3.20" detektVersion = "1.23.6" diff --git a/modo-compose/src/main/java/com/github/terrakok/modo/ContainerScreen.kt b/modo-compose/src/main/java/com/github/terrakok/modo/ContainerScreen.kt index 9f9ceb9..f43b202 100644 --- a/modo-compose/src/main/java/com/github/terrakok/modo/ContainerScreen.kt +++ b/modo-compose/src/main/java/com/github/terrakok/modo/ContainerScreen.kt @@ -4,6 +4,7 @@ import android.os.Parcel import android.os.Parcelable import androidx.compose.runtime.Composable import androidx.compose.runtime.ProvidedValue +import androidx.compose.runtime.Stable import androidx.compose.runtime.staticCompositionLocalOf import androidx.compose.ui.Modifier @@ -13,6 +14,7 @@ fun interface ReducerAction : NavigationAction { fun reduce(oldState: State): State } +@Stable abstract class ContainerScreen>( private val navModel: NavModel ) : Screen, NavigationContainer by navModel { diff --git a/modo-compose/src/main/java/com/github/terrakok/modo/ModoModels.kt b/modo-compose/src/main/java/com/github/terrakok/modo/ModoModels.kt index 4841a96..2bc405c 100644 --- a/modo-compose/src/main/java/com/github/terrakok/modo/ModoModels.kt +++ b/modo-compose/src/main/java/com/github/terrakok/modo/ModoModels.kt @@ -1,6 +1,7 @@ package com.github.terrakok.modo import android.os.Parcelable +import androidx.compose.runtime.Stable /** * State of navigation used in [NavigationContainer]. Can be any type. @@ -29,6 +30,7 @@ fun interface NavigationReducer> { val navigationState: State diff --git a/modo-compose/src/main/java/com/github/terrakok/modo/Screen.kt b/modo-compose/src/main/java/com/github/terrakok/modo/Screen.kt index 9ecfb08..6b2faea 100644 --- a/modo-compose/src/main/java/com/github/terrakok/modo/Screen.kt +++ b/modo-compose/src/main/java/com/github/terrakok/modo/Screen.kt @@ -2,6 +2,7 @@ package com.github.terrakok.modo import android.os.Parcelable import androidx.compose.runtime.Composable +import androidx.compose.runtime.Stable import androidx.compose.ui.Modifier /** @@ -11,6 +12,7 @@ import androidx.compose.ui.Modifier * @see ContainerScreen * @see DialogScreen */ +@Stable interface Screen : Parcelable { // TODO: https://issuetracker.google.com/issues/239435908 - support default valuer for the modifier param.