mirror of
https://github.com/stablyai/orca.git
synced 2026-09-22 08:02:28 +00:00
* fix(settings): defer Display Name persistence until IME composition ends The repository Display Name input persisted every keystroke via async updateRepo, including unconfirmed IME text. For Japanese (and other CJK) input this wrote pre-confirmation text to the store, and its async echo could cancel the active composition. Track composition state and hold persistence until compositionend so only confirmed text reaches updateRepo; non-IME typing still persists per keystroke. * fix(settings): de-duplicate Display Name persist on trailing IME change Some IMEs (e.g. Firefox) fire the final change event after compositionend, which repeated the already-persisted confirmed value through updateRepo. Track the composition-end text and skip the next matching change so the confirmed value is persisted exactly once. Model the trailing input event in the unit test so the single-fire guard is exercised. * fix(settings): reset IME draft guards after repo changes Co-authored-by: Orca <help@stably.ai> --------- Co-authored-by: Jinwoo-H <jinwoo0825@gmail.com> Co-authored-by: Orca <help@stably.ai>