From 6b5ed804e3e0107866e6afdddb226836e020f8d5 Mon Sep 17 00:00:00 2001 From: claude Date: Sun, 23 Aug 2026 22:47:55 +0200 Subject: [PATCH] =?UTF-8?q?Hemsk=C3=A4rm:=20uppdatera=20kcal-m=C3=A4taren?= =?UTF-8?q?=20n=C3=A4r=20sk=C3=A4rmen=20visas=20igen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 Claude-Session: https://claude.ai/code/session_01C2GA94E1f3cmrvdQLQhYdg --- app/build.gradle.kts | 2 +- .../main/java/eu/brassepc/fitnessdroid/ui/home/HomeScreen.kt | 4 ++++ .../java/eu/brassepc/fitnessdroid/ui/home/HomeViewModel.kt | 5 +++++ 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 4381050..f599391 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -29,7 +29,7 @@ android { minSdk = 31 targetSdk = 35 versionCode = ciRunNumber ?: 1 - versionName = "0.6.0" + (ciRunNumber?.let { "+build.$it" } ?: "-dev") + versionName = "0.6.1" + (ciRunNumber?.let { "+build.$it" } ?: "-dev") } signingConfigs { diff --git a/app/src/main/java/eu/brassepc/fitnessdroid/ui/home/HomeScreen.kt b/app/src/main/java/eu/brassepc/fitnessdroid/ui/home/HomeScreen.kt index 53724de..9af1885 100644 --- a/app/src/main/java/eu/brassepc/fitnessdroid/ui/home/HomeScreen.kt +++ b/app/src/main/java/eu/brassepc/fitnessdroid/ui/home/HomeScreen.kt @@ -51,6 +51,10 @@ fun HomeScreen( val displayName by viewModel.displayName.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( modifier = Modifier .fillMaxSize() diff --git a/app/src/main/java/eu/brassepc/fitnessdroid/ui/home/HomeViewModel.kt b/app/src/main/java/eu/brassepc/fitnessdroid/ui/home/HomeViewModel.kt index 8d7075e..53ebf57 100644 --- a/app/src/main/java/eu/brassepc/fitnessdroid/ui/home/HomeViewModel.kt +++ b/app/src/main/java/eu/brassepc/fitnessdroid/ui/home/HomeViewModel.kt @@ -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( java.time.LocalDate.now().atStartOfDay(), java.time.LocalDateTime.now() ).seconds.coerceAtLeast(0)