게임 개발 · 기술 동향미로의 개발노트
카테고리

Design Data Table

시트 우클릭 메뉴 깜박임·시트 전환·뒤쪽 툴팁

개발 기록 · 블로그 공개

원본 기록 상태 해결

실제 마우스로 우클릭 소멸·시트 전환을 재현해 수정하고, 메뉴 뒤쪽 툴팁을 억제했습니다.

실제 우클릭 메뉴
실제 우클릭 메뉴

작업 결과

우클릭 메뉴 유지·현재 시트 유지·대상 작업·메뉴 중 툴팁 억제 및 종료 후 복구를 실제 Unity에서 검증했습니다.


변경 내용

재현 조건

Unity6000.0.83f1·Windows·전용 QA 프로젝트

재현 순서

현재 시트가 아닌 탭을 오른쪽 버튼으로 클릭하고 포인터를 멈춘 채 기다립니다.

기대 동작

메뉴가 유지되고 현재 시트가 그대로이며 뒤쪽 툴팁이 뜨지 않아야 합니다.

실제 동작

수정 전 실제 오른쪽 클릭에서 메뉴가 사라지고 시트 전환. 사용자 추가 제보로 메뉴 뒤 툴팁도 수정.

원인

MouseDown과 ContextClick을 중복 처리하고 메뉴를 열 때 SelectWorksheet를 호출했습니다. ScreenTip은 포인터가 소유 문서 위에 있는지만 검사해 연결된 메뉴가 열린 상태를 고려하지 않았습니다.

적용 내용

오른쪽 MouseDown은 탭 버튼에 전달하지 않고 MouseUp에서 메뉴를 한 번만 엽니다. 같은 클릭의 ContextClick 재처리를 억제합니다. 메뉴를 열 때 SelectWorksheet를 호출하지 않으며, 이름 변경·삭제는 캡처한 시트 이름을 대상으로 실행합니다. 연결된 팝업이 열려 있으면 문서 ScreenTip을 초기화하고, 닫으면 일반 호버를 다시 허용합니다.


검증

수정 전 실제 우클릭에서 메뉴 소멸·시트 전환 재현. 수정 후 같은 메뉴 핸들로5초 유지·Column 유지. 최종 메뉴 코드에서 실제 우클릭6회, Esc/바깥 클릭 각3회, 왼쪽 선택·비선택 시트 삭제·저장 재열기 통과. 메뉴의 이름 변경 항목을 실제 클릭한 뒤 캡처된 콜백으로 다른 시트만 변경했습니다. 툴팁 추가 수정 후 실제 우클릭·정지3초에서 tipKey 비어 있음·painted false·동일 메뉴 유지, Esc 후 일반 sheet.tab 툴팁 복구를 확인했습니다. 제품3어셈블리 컴파일 통과. 서로 다른 실행 어셈블리는 source.json에 구분합니다.


개발 화면

실제 우클릭 메뉴


출처

중앙 아카이브 원문

같은 카테고리의 글

개발 기록 아카이브 전체 보기 ↗