diff --git a/app/src/main/java/com/medithings/vesiscan/ui/views/monitoring/PlacementGuideView.kt b/app/src/main/java/com/medithings/vesiscan/ui/views/monitoring/PlacementGuideView.kt index 5808638..2a89d24 100644 --- a/app/src/main/java/com/medithings/vesiscan/ui/views/monitoring/PlacementGuideView.kt +++ b/app/src/main/java/com/medithings/vesiscan/ui/views/monitoring/PlacementGuideView.kt @@ -1233,15 +1233,14 @@ fun PlacementGuideView(appState: AppState) { if (waitingForStart) { Button( onClick = { - // 2026-08-04: 탈착 상태에서 Start 눌러도 진행 안 되던 사용자 혼란 fix. - // 기존: waitingForStart=false → 다음 scan 이 detach 재감지 → 다시 - // waitingForStart=true 로 회귀 · rising edge 이미 소진되어 팝업 없음. - // 변경: onClick 시점에 prevDetached 감지 → 팝업 재발생 + Start 진행 차단. - // "센서 부착 후 다시 시도" 를 사용자에게 명확히 안내. - if (prevDetached) { - showDetachAlert = true - return@Button - } + // 2026-08-11 재수정: 이전 fix (prevDetached true 면 팝업+차단) 는 + // auto-scan 멈춘 사이 prevDetached 값이 stale 인 문제 있음. + // → 사용자가 재부착해도 상태 갱신 X · Start 누를 때마다 팝업만. + // 현재 정책: stale 상태 리셋하고 첫 scan 이 재판정. 실제로 detach + // 이면 첫 scan rising edge (line 882) 로 팝업 자동 재발생 → + // waitingForStart=true 자동 회귀. 실제 부착이면 정상 진행. + prevDetached = false + showDetachAlert = false waitingForStart = false isContinuousMode = true // V2 alignment 리셋 — baseline 동안 silent push 가 없었더라도 안전망.