You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
PR #992 리뷰에서 나온 비차단 지적 둘. 둘 다 «지금은 대체로 동작하지만 가정이 깨지면 조용히 틀리는» 종류다.
1. KEYBOARD_SETTLE_MS = 300 — 타이밍 가정
WriteTextField.kt 가 키보드가 300ms 안에 올라온다고 가정하고 패널을 연다. 저사양 기기나 커스텀 IME 에서 그 안에 안 올라오면 방금 켠 패널이 닫힌다.
WindowInsets.isImeVisible 이 실제로 true 가 될 때까지 기다리는 형태(snapshotFlow { imeVisible }.first { it } + 타임아웃)로 바꾸면 가정이 사라진다. 지금 구조를 유지하더라도 상수 옆에 «왜 300인가» 근거가 있어야 다음 사람이 조정할 수 있다.
2. isSupportedLinkUrl 이 유니코드 URL 을 거부
HtmlText.kt 의 URI(trimmed) 는 한글 도메인·한글 경로에서 URISyntaxException 을 던져 정상 주소도 막는다.
https://한글.com → 거부
https://example.com/한글 → 거부
붙여넣기로 흔히 들어오는 형태다. java.net.IDN 으로 호스트를 punycode 변환하거나, 경로를 percent-encoding 한 뒤 검증하는 방식이 필요하다. 스킴 제한(http/https 만 허용, javascript: 차단)은 그대로 유지해야 한다.
Activity
[-]fix(mindrecord): 작성 툴바가 타이밍 가정에 기대고, 링크 검증이 유니코드 URL 을 거부[/-][+]작성 툴바가 타이밍 가정에 기대고, 링크 검증이 유니코드 URL 을 거부[/+]docs(qa): #1067 기록의 PR 번호를 채운다
Merge origin/develop into fix/1067-link-url-validation