iachat/app/javascript/dashboard/components-next
Aakash Bakhle b103747584
fix: skip Enter key submission during IME composition in AI inputs (#13779)
# Pull Request Template

## Description

CJK language users (Chinese, Japanese, Korean, etc.) use IME where Enter
confirms character selection. AI input components were intercepting
Enter unconditionally, making them unusable for IME users.

Add `event.isComposing` check to CopilotEditor, CopilotInput, and
AssistantPlayground so Enter during active IME composition is ignored.


## Type of change

Please delete options that are not relevant.

- [x] Bug fix (non-breaking change which fixes an issue)

## How Has This Been Tested?

Please describe the tests that you ran to verify your changes. Provide
instructions so we can reproduce. Please also list any relevant details
for your test configuration.

Before:

Add a Japenese keyboard, then go to AI follow-ups, type some word,
selecting it with enter submits the follow up. So CJK users cannot use
follow-ups.



https://github.com/user-attachments/assets/53517432-d97b-47fc-a802-81675e31d5c9



After:

Type a word, press enter to choose it, press enter again to unselect it
and enter again to send


https://github.com/user-attachments/assets/6c2a420b-7ee6-4c71-82a6-d9f1d7bbf31a



## Checklist:

- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my code
- [x] I have commented on my code, particularly in hard-to-understand
areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [x] Any dependent changes have been merged and published in downstream
modules

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 10:26:51 +05:30
..
Accordion feat: Allow customizing the responses, flows in Captain (#11385) 2025-04-29 15:42:15 -07:00
AssignmentPolicy feat(inbox): Enable conversation continuity for social channels (#11079) 2026-02-25 13:56:51 +04:00
avatar feat(V5): Update settings pages UI (#13396) 2026-02-19 15:04:40 +05:30
banner chore: Update buttons in dashboard (#11145) 2025-03-31 17:21:32 -07:00
breadcrumb chore: Optimize contact page for smaller displays (#12183) 2025-08-14 19:07:20 +05:30
button chore: Update theme colors and add new Inter variable fonts (#13347) 2026-01-28 14:36:04 -08:00
buttonGroup feat: Enhance button interactions (#12738) 2025-11-06 16:24:05 +05:30
Campaigns fix: ProseMirror prompt modal UI issue (#13722) 2026-03-09 16:51:49 +05:30
captain fix: skip Enter key submission during IME composition in AI inputs (#13779) 2026-03-13 10:26:51 +05:30
changelog-card chore: Update theme colors and add new Inter variable fonts (#13347) 2026-01-28 14:36:04 -08:00
checkbox feat: Add support for bulk action for Captain FAQs (#10905) 2025-02-27 17:05:33 -08:00
colorpicker chore: Remove older UI (#11720) 2025-07-01 09:43:44 +05:30
combobox feat(V5): Update settings pages UI (#13396) 2026-02-19 15:04:40 +05:30
Companies feat(V5): Update settings pages UI (#13396) 2026-02-19 15:04:40 +05:30
Contacts fix(contacts): Show telegram id in contact details form (#13611) 2026-02-23 19:26:45 +04:00
content-templates feat: Add twilio content templates (#12277) 2025-08-29 16:13:25 +05:30
Conversation feat: Conversation workflows(EE) (#13040) 2026-01-27 11:36:20 +04:00
ConversationWorkflow fix: Adjust inbox settings pages layout width (#13590) 2026-02-20 20:20:32 +05:30
copilot fix: skip Enter key submission during IME composition in AI inputs (#13779) 2026-03-13 10:26:51 +05:30
CustomAttributes feat(V5): Update settings pages UI (#13396) 2026-02-19 15:04:40 +05:30
dialog fix: ProseMirror prompt modal UI issue (#13722) 2026-03-09 16:51:49 +05:30
dropdown-menu chore: Remove vue-multiselect and migrate to next components (#13506) 2026-02-17 16:40:12 +05:30
Editor feat: compose form improvements (#13668) 2026-03-02 18:27:51 +05:30
feature-spotlight feat(V5): Update settings pages UI (#13396) 2026-02-19 15:04:40 +05:30
filter chore: Remove vue-multiselect and migrate to next components (#13506) 2026-02-17 16:40:12 +05:30
flag feat: Flag icon component (#10564) 2024-12-10 11:53:24 +05:30
HelpCenter feat(help-center): enable drag-and-drop category reordering (#13706) 2026-03-05 12:53:38 +05:30
icon feat(V5): Update settings pages UI (#13396) 2026-02-19 15:04:40 +05:30
Inbox chore: Update theme colors and add new Inter variable fonts (#13347) 2026-01-28 14:36:04 -08:00
inline-input chore: Remove older UI (#11720) 2025-07-01 09:43:44 +05:30
input feat(V5): Update settings pages UI (#13396) 2026-02-19 15:04:40 +05:30
label feat(V5): Update settings pages UI (#13396) 2026-02-19 15:04:40 +05:30
message fix(ui): Show delivered state for Instagram external echo messages (#13700) 2026-03-03 15:16:53 +04:00
NewConversation fix: ProseMirror prompt modal UI issue (#13722) 2026-03-09 16:51:49 +05:30
pagination feat(V5): Update settings pages UI (#13396) 2026-02-19 15:04:40 +05:30
phonenumberinput fix: Accidental contact creation on country dropdown toggle (#11494) 2025-05-16 16:14:00 +05:30
radioCard feat(inbox): Enable conversation continuity for social channels (#11079) 2026-02-25 13:56:51 +04:00
select feat(V5): Update settings pages UI (#13396) 2026-02-19 15:04:40 +05:30
selectmenu feat: Update conversation basic filter (#11415) 2025-05-06 12:44:23 +05:30
Settings feat(V5): Update settings pages UI (#13396) 2026-02-19 15:04:40 +05:30
sidebar feat(V5): Update settings pages UI (#13396) 2026-02-19 15:04:40 +05:30
spinner feat: Add Spinner to new components (#10303) 2024-10-16 17:53:46 -07:00
switch feat(V5): Update settings pages UI (#13396) 2026-02-19 15:04:40 +05:30
tabbar chore: Update theme colors and add new Inter variable fonts (#13347) 2026-01-28 14:36:04 -08:00
table feat(V5): Update settings pages UI (#13396) 2026-02-19 15:04:40 +05:30
taginput feat: compose form improvements (#13668) 2026-03-02 18:27:51 +05:30
textarea feat: Conversation workflows(EE) (#13040) 2026-01-27 11:36:20 +04:00
whatsapp feat: Add media_name support for WhatsApp templates document files (#12462) 2025-09-18 15:25:31 +05:30
year-in-review feat(V5): Update settings pages UI (#13396) 2026-02-19 15:04:40 +05:30
CardLayout.vue feat(V5): Update settings pages UI (#13396) 2026-02-19 15:04:40 +05:30
EmptyStateLayout.vue feat(V5): Update settings pages UI (#13396) 2026-02-19 15:04:40 +05:30
SidebarActionsHeader.story.vue feat: Update the UI to support the change for Copilot as a universal copilot (#11618) 2025-05-29 12:35:10 +05:30
SidebarActionsHeader.vue feat: Update the UI to support the change for Copilot as a universal copilot (#11618) 2025-05-29 12:35:10 +05:30
TeleportWithDirection.vue feat: Add Teleport component to fix RTL/LTR utility classes (#11455) 2025-05-12 11:49:23 -07:00