Bug 231133

Summary: Dictated text gets duplicated when there are dictation alternatives
Product: WebKit Reporter: Neil Jhaveri <neil>
Component: HTML EditingAssignee: Nobody <webkit-unassigned>
Status: NEW ---    
Severity: Normal CC: megan_gardner, thorton, webkit-bug-importer, wenson_hsieh
Priority: P2 Keywords: InRadar
Version: Safari 15   
Hardware: Mac (Intel)   
OS: macOS 11   
Attachments:
Description Flags
Video demonstration
none
Test app none

Description Neil Jhaveri 2021-10-02 20:54:25 PDT
Created attachment 439992 [details]
Video demonstration

When dictating text into a WKWebView displaying a contenteditable element, the inserted text is duplicated if there are dictation alternatives.

STEPS TO REPRODUCE:
1. Create a test app with a WKWebView, call `webView.loadHTMLString("<body contenteditable=\"true\"></body>", baseURL:nil)`.
2. Run test app, choose Edit > Start Dictation
3. Say "Foo" then "Bar" 
4. End dictation
==> Dictation inserts "Food barFood bar"

If you speak a phrase clearly and dictation does not have alternative options, such as "Hello there", this duplication does not occur.

Interestingly, this bug does not occur in Safari itself, only when using a WKWebView directly.
Comment 1 Neil Jhaveri 2021-10-02 20:56:02 PDT
Created attachment 439993 [details]
Test app
Comment 2 Radar WebKit Bug Importer 2021-10-09 20:55:15 PDT
<rdar://problem/84068339>