From 97e4933871f1f346a3dfea3df4022da2a1295ebf Mon Sep 17 00:00:00 2001 From: jjangddu Date: Tue, 4 Aug 2026 16:22:25 +0900 Subject: [PATCH] =?UTF-8?q?fix(alignment):=20demo-final=20PlacementGuide?= =?UTF-8?q?=20settings=20=EC=97=90=20METHOD=5FD=20=EC=98=B5=EC=85=98=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 증상 (사용자 보고 2026-08-04): Alignment 설정 화면 · Detection 셀렉터에 A/B/C 만 있고 D 가 없음. Clinical / Alignment 에서 Method D 가 적용 안 된 것처럼 보임. 원인: demo-final PlacementGuideView.kt:1323-1327 에 METHOD_D 항목 누락. 최근 default detectionMethod 를 METHOD_D 로 변경 (`0184c6d`) 했으나 이 셀렉터 UI 는 여전히 A/B/C 만 노출 · 사용자가 선택 화면 진입 시 어떤 버튼도 highlight 되지 않아 "적용 안됨" 으로 오인. 실제로는 default METHOD_D 가 코드에서 정상 적용 중 (BV 계산 · walls 검출 모두). UI 만 옵션 4개 중 3개만 보였던 것. 수정: methods 리스트에 METHOD_D 추가 · colors 도 4개로 확장 (D=magenta). cloud-mvp 는 이미 4개 옵션 노출 중이었음 · demo-final 이 뒤쳐진 상태였음. --- .../ui/views/monitoring/PlacementGuideView.kt | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) 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 ba4957d..30b3bb0 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 @@ -1315,7 +1315,10 @@ fun PlacementGuideView(appState: AppState) { .shadow(12.dp, RoundedCornerShape(14.dp)) ) { Column(modifier = Modifier.padding(16.dp), verticalArrangement = Arrangement.spacedBy(8.dp)) { - // Method A/B/C + // Method A/B/C/D + // 2026-08-04: METHOD_D 옵션 추가 (기존 A/B/C 만 있어 default D 상태에서 + // 버튼 하이라이트 없어 사용자가 "적용 안됨" 으로 인지하던 UX 버그). + // cloud-mvp 는 D 있었음 · demo-final 은 누락되어 있었음. var selectedMethod by remember { mutableStateOf(com.medithings.vesiscan.managers.GreenZoneConstants.detectionMethod) } Row(modifier = Modifier.fillMaxWidth(), verticalAlignment = Alignment.CenterVertically) { Text("Detection", fontSize = 14.sp, fontWeight = FontWeight.SemiBold) @@ -1323,9 +1326,15 @@ fun PlacementGuideView(appState: AppState) { val methods = listOf( com.medithings.vesiscan.managers.DetectionMethod.METHOD_A to "A", com.medithings.vesiscan.managers.DetectionMethod.METHOD_B to "B", - com.medithings.vesiscan.managers.DetectionMethod.METHOD_C to "C" + com.medithings.vesiscan.managers.DetectionMethod.METHOD_C to "C", + com.medithings.vesiscan.managers.DetectionMethod.METHOD_D to "D", + ) + val colors = listOf( + Color(0xFF9C27B0), // A: purple + MlPrimary, // B: blue + Color(0xFFFF5722), // C: deep orange + Color(0xFFAB47BC), // D: magenta (cloud-mvp 와 통일) ) - val colors = listOf(Color(0xFF9C27B0), MlPrimary, Color(0xFFFF5722)) Row(horizontalArrangement = Arrangement.spacedBy(4.dp)) { methods.forEachIndexed { idx, (m, label) -> val sel = selectedMethod == m