배경
#11 감사 문서에서 mark wrapper는 cursor unit이 아니라 text-run 내부 시각 wrapper로 확정했다. 단 jsdom/unit test는 DOM boundary mapping만 닫고, 실제 Chrome/Safari/Firefox IME가 mark boundary에서 어떤 DOM selection/composition event를 만드는지는 아직 수집하지 않았다.
근거 문서: docs/editor-decoration-boundary-composition-audit.md
수집할 trace
- bold/italic/code/link 시작 경계에서 Korean/Japanese/Chinese composition 시작
- bold/italic/code/link 끝 경계에서 composition 시작
- active mark가 켜진 collapsed caret에서 composition 시작과 commit
- mark boundary에 걸친 range selection에서 composition 시작
- Enter/Space가 composition commit과 동시에 들어오는 경우
완료 기준
- Chrome, Safari, Firefox 중 최소 2개 브라우저에서 debug trace를 남긴다.
- event order, native DOM selection, canonical selection, final document를 비교한다.
- 현재 one-patch flush/active text leaf gate로 충분한지, 별도 guard가 필요한지 판정한다.
배경
#11 감사 문서에서 mark wrapper는 cursor unit이 아니라 text-run 내부 시각 wrapper로 확정했다. 단 jsdom/unit test는 DOM boundary mapping만 닫고, 실제 Chrome/Safari/Firefox IME가 mark boundary에서 어떤 DOM selection/composition event를 만드는지는 아직 수집하지 않았다.
근거 문서:
docs/editor-decoration-boundary-composition-audit.md수집할 trace
완료 기준