-
Notifications
You must be signed in to change notification settings - Fork 711
Description
Summary
Summary
When using Japanese IME, pressing Enter to confirm text conversion also triggers an unintended execution / submit action in OpenWork. This makes it trivially easy to accidentally run commands or confirm actions while still composing text.
Technical Notes
This issue likely occurs because the IME composition state is not being respected.
Possible causes:
keydown/keyuphandling does not checkevent.isComposing- Missing handling of
compositionstart/compositionendevents
Recommended fix pattern:
if (event.key === "Enter" && event.isComposing) {
return; // Do not execute while IME is active
}Why this matters
This is not a user error but a known i18n issue common in English-first UIs. Without IME-aware handling, Japanese users are very likely to trigger accidental executions.
Additional Context
Similar issues have been reported and fixed in other OSS projects by respecting IME composition events.
Happy to help test a fix if needed. 🙏
Steps to reproduce
Environment
- OS: macOS
- Input Method: Japanese IME (macOS IME / Google IME)
- Browser or App: App
- OpenWork version / commit hash: Version 0.11.9 (0.11.9)
Steps to Reproduce
- Enable Japanese IME
- Focus on a text input field in OpenWork
- Start typing Japanese text (with IME composition active)
- Press Enter to confirm the conversion
Expected behavior
Expected Behavior
- Pressing Enter during IME composition should only confirm text conversion
- No execution / submit action should occur until:
- IME composition has ended, and
- The user explicitly presses Enter again (or uses a dedicated shortcut like Ctrl+Enter)
Actual behavior
Actual Behavior
- The IME conversion is confirmed and
- A command / submit / execute action is also triggered