Skip to content

Commit da8401e

Browse files
author
张可
committed
fix(viewmodel): keep useIndexedValues in AndroidParametersHolder
1 parent 767281e commit da8401e

1 file changed

Lines changed: 11 additions & 3 deletions

File tree

projects/core/koin-core-viewmodel/src/commonMain/kotlin/org/koin/viewmodel/factory/AndroidParametersHolder.kt

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,18 @@ import org.koin.core.parameter.ParametersDefinition
2222
import org.koin.core.parameter.ParametersHolder
2323
import kotlin.reflect.KClass
2424

25-
class AndroidParametersHolder(
26-
initialValues: ParametersDefinition? = null,
25+
class AndroidParametersHolder private constructor(
26+
initialValues: ParametersHolder?,
2727
private val extras: CreationExtras,
28-
) : ParametersHolder(initialValues?.invoke()?.values?.toMutableList() ?: mutableListOf()) {
28+
) : ParametersHolder(
29+
_values = initialValues?.values?.toMutableList() ?: mutableListOf(),
30+
useIndexedValues = initialValues?.useIndexedValues,
31+
) {
32+
33+
constructor(
34+
initialValues: ParametersDefinition? = null,
35+
extras: CreationExtras,
36+
) : this(initialValues?.invoke(), extras)
2937

3038
override fun <T> elementAt(i: Int, clazz: KClass<*>): T {
3139
return createSavedStateHandleOrElse(clazz) { super.elementAt(i, clazz) }

0 commit comments

Comments
 (0)