From bfe4721c6bee65d6f9e9702536c577564a210f2a Mon Sep 17 00:00:00 2001 From: OneWay Date: Wed, 2 Sep 2026 10:56:32 +0800 Subject: [PATCH] fix: reset dictionary progress bar between indexing operations monotonicTargetProgress is held in remember and only ever grows via maxOf, so when a new indexing starts after a previous one reached a higher value the bar is left at the old level while the percent label starts at 0. Snap it to the current target when the section becomes visible so the bar follows the new operation from its first frame. --- .../ui/settings/components/DictionaryProgressSection.kt | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/app/src/main/java/com/example/research/ui/settings/components/DictionaryProgressSection.kt b/app/src/main/java/com/example/research/ui/settings/components/DictionaryProgressSection.kt index fafed91..cfe5d3c 100644 --- a/app/src/main/java/com/example/research/ui/settings/components/DictionaryProgressSection.kt +++ b/app/src/main/java/com/example/research/ui/settings/components/DictionaryProgressSection.kt @@ -41,6 +41,11 @@ fun DictionaryProgressSection( var displayedPercent by remember { mutableIntStateOf(percent) } var displayedTestTag by remember { mutableStateOf(testTag) } + LaunchedEffect(visible) { + if (visible) { + monotonicTargetProgress = targetProgress + } + } LaunchedEffect(visible, targetProgress) { if (visible) { monotonicTargetProgress = maxOf(monotonicTargetProgress, targetProgress)