#11723·social-app

Enter used to confirm an IME conversion (e.g. Japanese) triggers search

Author: urmshrCreated Sep 15, 2026Updated Sep 15, 2026
Labelsbug

Steps to Reproduce

  1. Open https://bsky.app/search in a desktop browser on macOS (Chrome or Safari).
  2. Switch to a Japanese IME, type にほん and press Space to convert it to 日本.
  3. Press Enter to confirm the conversion.

Expected: The conversion is committed and the text stays in the search field. The search runs on the next Enter. Actual: The search runs immediately on the Enter that confirms the conversion.

Attachments

No response

What platform(s) does this occur on?

Web (Desktop)

Device Info

macOS 26.5.2, Chrome 152.0.7977.83 / Safari 26.5.2, macOS Japanese IME

What version of the app are you using?

Build version: 1.132.0; Bundle info: 882741c (prod); Bundle date: 26090920; Platform: web; Platform version: 0.0.0; Device ID: 5fda8beb-cffb-4c2c-b0bf-a608546a0ed1

Additional Information

The search dropdown uses @bsky.app/sift. Its web keyboard handler (useKeyboardHandling.web.ts) handles Enter on keydown without checking for IME composition, so the confirming Enter selects the first item (the search fallback).

Suggested fix at the top of onKeyDown, as recommended by MDN:

typescript
if (e.isComposing || e.keyCode === 229) return

Related: #4178 (same issue in the DM input, fixed by #4159 / #4186). Sift lives outside this repo, but I can open a PR with a pnpm patch for @bsky.app/sift as a stopgap if that helps.

Source: bluesky-social/social-app