Skip to content

기본 단축키 해석을 정본 키맵과 chord로 통일한다 #733

Description

@developer-1px

Goal Anchor

  • Outcome: 같은 기본 단축키 입력이 Web·Affordance·Composer 중 어느 경로를 통과하느냐에 따라 달라지지 않도록 공통 키 해석을 정본에서 소비한다.
  • Done: 삭제·전체 선택·Undo/Redo의 기본 수정키 판정을 정본 API로 연결한다. 실제 React/Host 입력에서도 수정키가 보존되며, 관련 공개 API·owner 문서·Usage·source registration과 회귀 검증을 갖춘다.
  • Don't: Core의 여섯 멤버나 공개 편집 명령 종류를 늘리지 않는다. 제품별 키맵, Composer 제출·줄바꿈 정책, 전체 선택의 명시적 preserve/toggle 및 생략 시 기존 toggle 계약을 유지한다. 텍스트 단어 삭제와 구조적 삭제를 통합하지 않는다. Annotation·Gesture·Profile 동결·merge는 포함하지 않는다.

승인과 근거

사용자가 #725 건강도 감사의 실행에 “진행하자”, 첫 단계 #731 / #732 이후 “좋아 다음”으로 후속 실행을 요청했다. 이번 이슈는 감사 2단계 중 기본 단축키 해석을 소유한다.

현재 Web resolver는 수정키를 모두 포함한 chord를 조회한다. 반면 deleteAffordance는 key만 검사하고 selectAllAffordance는 Alt/Shift를 읽지 않는다. Composer React는 Alt를 버린 뒤 composerInteractionFromKeyStroke가 별도 Mod+Z 규칙을 적용한다. 그 결과 Mod+Alt+Z가 Composer에서 Undo로, Mod+Backspace가 Affordance에서 구조적 삭제로 처리될 수 있다.

Web 기본 명령에는 전체 선택이 없으므로 지원 명령 집합까지 같다고 가정하지 않는다. 공통화 대상은 키 입력 해석과 이미 중복된 기본 규칙이며, 전체 선택의 반복 정책과 Composer 제출 정책은 각각의 owner에 남긴다.

범위와 완료 증거

  • Web keyboard의 정본 chord/resolver, Affordance의 삭제·전체 선택, Composer 키 입력 API와 React 입력 연결을 추적한다.
  • 기존 부분 입력 호출은 계속 지원하면서 실제 입력에 있는 수정키를 버리지 않는다.
  • Meta/Control, Shift, Alt 조합의 양성·음성 사례와 실제 소비자 경로에서 문서·History 및 이벤트 처리 여부를 검증한다.
  • 공개 API 문서·기존 Usage·source registration을 연결하고 영향 패키지 및 site 검사를 수행한다.
  • #589가 소유한 Annotation Host 정리는 별도로 유지한다. JSON 주소와 값 검증을 Core 정본으로 통일한다 #732 주소·JSON 검증과 독립적으로 최신 main에서 작업한다.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions