# 캡처 선택 영역이 드래그 중 번쩍임 ## 증상 - 캡처 범위를 드래그하면 원래 화면으로 보이는 선택 영역이 계속 번쩍였음. - 캡처 결과가 아니라 드래그 중 오버레이 표시에서만 발생했음. ## 원인 - `WM_MOUSEMOVE`마다 `InvalidateRect`에 영역을 주지 않아 전체 가상 화면을 다시 그렸음. - `WM_PAINT`가 실제 화면 DC에 검정 배경, 투명 color key, 테두리를 차례로 직접 그려 중간 상태가 노출됐음. - 멀티모니터 전체 면적을 매번 다시 칠해 불필요한 GDI 작업도 컸음. ## 수정 - 이전 선택 사각형과 새 선택 사각형의 합집합만 무효화함. - 오버레이 크기의 호환 bitmap과 memory DC를 한 번 만들고 창이 닫힐 때 해제함. - memory DC에서 배경·투명 영역·테두리를 완성한 뒤 dirty 영역만 `BitBlt` 한 번으로 화면에 복사함. - memory DC를 만들지 못하면 기존 화면 DC 그리기로 대체함. ## 확인 - 역방향 드래그를 포함한 선택 영역 합집합 계산 회귀 테스트를 추가함. - Rust 테스트 14개와 build를 통과함. - 요청에 따라 computer-use는 사용하지 않았고, 실제 드래그 화면 확인은 사용자 수동 확인으로 남김.