Hemskärm: uppdatera kcal-mätaren när skärmen visas igen
Some checks failed
release / build-release (push) Failing after 1m42s
Some checks failed
release / build-release (push) Failing after 1m42s
ViewModellen överlever i navigationsstacken, så nyloggade aktiviteter/pass syntes inte förrän appen startades om. Nu hämtas dailySummary om varje gång hemskärmen kommer tillbaka i fokus. Version 0.6.1. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01C2GA94E1f3cmrvdQLQhYdg
This commit is contained in:
@@ -29,7 +29,7 @@ android {
|
|||||||
minSdk = 31
|
minSdk = 31
|
||||||
targetSdk = 35
|
targetSdk = 35
|
||||||
versionCode = ciRunNumber ?: 1
|
versionCode = ciRunNumber ?: 1
|
||||||
versionName = "0.6.0" + (ciRunNumber?.let { "+build.$it" } ?: "-dev")
|
versionName = "0.6.1" + (ciRunNumber?.let { "+build.$it" } ?: "-dev")
|
||||||
}
|
}
|
||||||
|
|
||||||
signingConfigs {
|
signingConfigs {
|
||||||
|
|||||||
@@ -51,6 +51,10 @@ fun HomeScreen(
|
|||||||
val displayName by viewModel.displayName.collectAsStateWithLifecycle()
|
val displayName by viewModel.displayName.collectAsStateWithLifecycle()
|
||||||
val kcalToday by viewModel.kcalToday.collectAsStateWithLifecycle()
|
val kcalToday by viewModel.kcalToday.collectAsStateWithLifecycle()
|
||||||
|
|
||||||
|
// ViewModellen överlever i navigationsstacken — hämta om dagens kcal
|
||||||
|
// varje gång skärmen kommer tillbaka (t.ex. efter loggad aktivitet).
|
||||||
|
androidx.compose.runtime.LaunchedEffect(Unit) { viewModel.refresh() }
|
||||||
|
|
||||||
Column(
|
Column(
|
||||||
modifier = Modifier
|
modifier = Modifier
|
||||||
.fillMaxSize()
|
.fillMaxSize()
|
||||||
|
|||||||
@@ -79,6 +79,11 @@ class HomeViewModel(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Uppdatera mätaren — anropas när hemskärmen visas (igen). */
|
||||||
|
fun refresh() {
|
||||||
|
viewModelScope.launch { refreshKcal() }
|
||||||
|
}
|
||||||
|
|
||||||
private fun secondsIntoToday(): Long = java.time.Duration.between(
|
private fun secondsIntoToday(): Long = java.time.Duration.between(
|
||||||
java.time.LocalDate.now().atStartOfDay(), java.time.LocalDateTime.now()
|
java.time.LocalDate.now().atStartOfDay(), java.time.LocalDateTime.now()
|
||||||
).seconds.coerceAtLeast(0)
|
).seconds.coerceAtLeast(0)
|
||||||
|
|||||||
Reference in New Issue
Block a user