You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Found some related info during investigation of another issue, so let me put here a few details that (I hope) will help:
This is iOS specific issue, on desktop it works just fine. The logic for iterate over symbols properly implemented on both JVM and native. See BreakIterator in skiko (TODO move to icu package)
The reason of it is that iOS calls not just deleteBackward method, but selects one symbol before it. It causes deleting selected area instead of deleting one emoji symbol.
Theoretically, proper iterating should be already supported by native UITextInputStringTokenizer by default, but somehing goes wrong here. I didn't found easy fix (but I soo hoped to do it) during my investigation.
It worth to note that flutter has a lot of workarounds in similar place, so PTAL before fixing it.
dima-avdeev-jb
changed the title
Compound emojis are being treated as many symbols
iOS TextField, Compound emojis are being treated as many symbols
Jun 19, 2023
Describe the bug
Compound emojis such as π¨βπ©βπ§βπ¦ to a
TextField
aren't treated as a single symbol, as oppose to iOS native behavior. This affects deletion of such symbols and navigation using arrows on a physical keyboard.IMG_0037.MP4
(note that due to #3103 it removes two characters in a row instead of one with an on-screen keyboard)
Affected platforms
Versions
The text was updated successfully, but these errors were encountered: