fix: in-composing when key=Process

pull/3499/head
Junyi Du 2021-12-15 15:19:44 +08:00 committed by Tienson Qin
parent 7a8527b3f8
commit 80a9bc27bf
1 changed files with 7 additions and 8 deletions

View File

@ -1494,19 +1494,18 @@
#?(:cljs
(defn event-is-composing?
"Check if keydown event is a composing (IME) event.
Ignore the IME finishing keycode by default."
Ignore the IME process by default."
([e]
(event-is-composing? e true))
([e ignore-finish?]
(let [event-composing? (gobj/getValueByKeys e "event_" "isComposing")
finish-keycode? (= (.-keyCode e) 229)]
(if ignore-finish?
(and event-composing? (not finish-keycode?))
(or event-composing? finish-keycode?))))))
([e ignore-process?]
(let [event-composing? (gobj/getValueByKeys e "event_" "isComposing")]
(if ignore-process?
event-composing?
(or event-composing? (= (gobj/get e "key") "Process")))))))
#?(:cljs
(defn onchange-event-is-composing?
"Check if onchange event of Input is a composing (IME) event.
Including IME finishing."
Always ignore the IME process."
[e]
(gobj/getValueByKeys e "nativeEvent" "isComposing"))) ;; No keycode available