Skip to content

Commit 4d06f01

Browse files
fixing an error with default values
1 parent 9d431be commit 4d06f01

File tree

2 files changed

+11
-3
lines changed

2 files changed

+11
-3
lines changed

app/src/main/java/com/gmerinojimenez/tweaks/demo/TweakDemoApplication.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,13 +46,13 @@ class TweakDemoApplication : Application() {
4646
editableBoolean(
4747
key = "value2",
4848
name = "Value 2",
49+
defaultValue = true,
4950
)
5051
editableLong(
5152
key = "value4",
5253
name = "Value 4",
53-
defaultValue = 0L,
54+
defaultValue = 42L,
5455
)
55-
5656
button(
5757
key = "button1",
5858
name = "Demo button"

library/src/enabled/java/com/gmerinojimenez/tweaks/domain/TweaksBusinessLogic.kt

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,15 @@ class TweaksBusinessLogic @Inject constructor(
6666
val defaultValueFlow: StateFlow<T>? = editableCasted.defaultValue
6767
val initialValue = defaultValueFlow?.value
6868

69-
val mergedFlow: Flow<T?> = if (defaultValueFlow != null) merge(getFromStorage(entry), defaultValueFlow) else getFromStorage(entry)
69+
val mergedFlow: Flow<T?> = if (defaultValueFlow != null) {
70+
merge(
71+
getFromStorage(entry)
72+
.filter { it != null },
73+
defaultValueFlow
74+
)
75+
} else {
76+
getFromStorage(entry)
77+
}
7078

7179
return mergedFlow.stateIn(
7280
scope = CoroutineScope(Dispatchers.Default),

0 commit comments

Comments
 (0)