Merge branch 'fork/beetle0915/fix/ime-enter-composition' into dev

This commit is contained in:
HouYunFei
2026-07-08 16:30:38 +08:00
4 changed files with 61 additions and 2 deletions
+22
View File
@@ -0,0 +1,22 @@
type NativeKeyboardEventLike = {
isComposing?: boolean;
keyCode?: number;
which?: number;
};
type KeyboardEventLike = NativeKeyboardEventLike & {
key?: string;
shiftKey?: boolean;
ctrlKey?: boolean;
metaKey?: boolean;
nativeEvent?: NativeKeyboardEventLike;
};
export function isImeComposing(event: KeyboardEventLike) {
const nativeEvent = event.nativeEvent;
return Boolean(event.isComposing || nativeEvent?.isComposing || event.keyCode === 229 || event.which === 229 || nativeEvent?.keyCode === 229 || nativeEvent?.which === 229);
}
export function isPlainEnterKey(event: KeyboardEventLike) {
return event.key === "Enter" && !event.shiftKey && !event.ctrlKey && !event.metaKey && !isImeComposing(event);
}