diff --git a/B05_Profile/B05_Profile_UI_Profile_Wheel.ts b/B05_Profile/B05_Profile_UI_Profile_Wheel.ts index 6534ec6f..d174fc83 100644 --- a/B05_Profile/B05_Profile_UI_Profile_Wheel.ts +++ b/B05_Profile/B05_Profile_UI_Profile_Wheel.ts @@ -119,6 +119,7 @@ export function attachWheelHorizontalScroll(scroller: HTMLElement): void { if (scroller.hasPointerCapture(dragId)) scroller.releasePointerCapture(dragId); dragId = null; scroller.style.cursor = ""; + scroller.style.userSelect = ""; // 끈 뒤의 click 한 번만 삼킨다(캡처 단계라 아래 리스너보다 먼저 잡는다). if (dragMoved) { const swallow = (event: MouseEvent): void => { @@ -160,6 +161,10 @@ export function attachWheelHorizontalScroll(scroller: HTMLElement): void { scroller.style.cursor = "grabbing"; // 이제부터 진짜 끌기다 — 창 밖으로 나가도 이어지도록 포인터를 잡는다. scroller.setPointerCapture(event.pointerId); + // 끄는 동안 글자가 파랗게 잡히지 않게 한다. 포인터 잡기를 미룬 뒤로 브라우저가 + // 기본 글자 선택을 시작했다(2026-09-06 사용자 지적). 이미 잡힌 것도 푼다. + scroller.style.userSelect = "none"; + window.getSelection()?.removeAllRanges(); } scroller.scrollLeft = dragLeft - dx; scroller.scrollTop = dragTop - dy;