Bug 261764
| Summary: | iOS/iPadOS dictation doesn't trigger composition events | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Kurt Revis <krevis> |
| Component: | UI Events | Assignee: | Nobody <webkit-unassigned> |
| Status: | NEW | ||
| Severity: | Normal | CC: | karlcow, megan_gardner, webkit-bug-importer, wenson_hsieh |
| Priority: | P2 | Keywords: | InRadar |
| Version: | Safari 17 | ||
| Hardware: | iPhone / iPad | ||
| OS: | Unspecified | ||
Kurt Revis
On iOS and iPadOS, using the OS dictation feature to enter text does not trigger composition events like `compositionstart`, `compositionupdate, `compositionend`. We only see `beforeinput` and `input`.
Compare to Safari on Mac (and Chrome and Firefox), where composition events do happen.
Steps:
1. Go to https://developer.mozilla.org/en-US/docs/Web/API/Element/compositionstart_event
2. Scroll down to the demo, click in the text field
3. Activate the OS's dictation feature (e.g. by pressing the microphone button on the iOS soft keyboard, or by pressing the microphone button/F5 on a Mac laptop)
4. Say "Hello"
5. Deactivate dictation
6. Observe what's in the "Event Log" area
Expected:
A `compositionstart` event, a sequence of `compositionupdate` events, then a `compositionend` with the full text "Hello".
Actual:
Nothing is logged, the event log is empty. No composition events happened.
Notes:
- Here's the output in Safari 16.6 on macOS 13.5.2:
compositionstart:
compositionupdate: H
compositionupdate: He
compositionupdate: Hel
compositionupdate: Hell
compositionupdate: Hello
compositionupdate: Hello
compositionupdate: Hello
compositionend: Hello
- And in Chrome 116.0.5845.187 on macOS 13.5.2:
compositionstart:
compositionupdate: H
compositionupdate: He
compositionupdate: Hel
compositionupdate: Hell
compositionupdate: Hello
compositionupdate: Hello
compositionupdate: Hello
compositionupdate: Hello
compositionupdate: Hello
compositionend: Hello
- And in Firefox 117.0.1 on macOS 13.5.2:
compositionstart:
compositionupdate: H
compositionupdate: He
compositionupdate: Hel
compositionupdate: Hell
compositionupdate: Hello
compositionend: Hello
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Kurt Revis
I'm seeing the wrong behavior in Mobile Safari on both iPhone and iPad, on 15.7.2, 16.6.1, 17.0.
Radar WebKit Bug Importer
<rdar://problem/115811978>