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
I have noticed that character composition is handled in a weird way which is moreover inconsistent with at least Firefox.
Take X for instance. This was generated through the Zalgo text generator at https://eeemo.net . The base character was simply an 'X'.
If I put the character, place my cursor after it and press [backspace], only one component is removed. This is consistent with Firefox in general.
However, if I place my cursor in front of it and press [del], only the base "X" is removed and this is not consistent with Firefox which removes the whole composition. I expect other browsers to remove everything too.
Strictly speaking, changing that is likely an API change: for the [del] case, the delta given to the "text-changed" callback is a delete(1) while it should be delete(9) to remove everything. However I have serious doubts that people are currently relying on such a behaviour because it makes handling of composed characters very difficult and is also quite meaningless. Moreover, it makes it impossible to devise sane semantics for merging operations which involve at least one composed character.
Tested on FF 52 on Linux with Quill 1.2.4.
edit: I have no idea how I didn't notice it but #1437 might be related.
edit: fixed formating
The text was updated successfully, but these errors were encountered:
Quill 2.0 has been released (announcement post) with many changes and fixes. If this is still an issue please create a new issue after reviewing our updated Contributing guide 🙏
Hi,
I have noticed that character composition is handled in a weird way which is moreover inconsistent with at least Firefox.
Take X for instance. This was generated through the Zalgo text generator at https://eeemo.net . The base character was simply an 'X'.
If I put the character, place my cursor after it and press [backspace], only one component is removed. This is consistent with Firefox in general.
However, if I place my cursor in front of it and press [del], only the base "X" is removed and this is not consistent with Firefox which removes the whole composition. I expect other browsers to remove everything too.
Strictly speaking, changing that is likely an API change: for the [del] case, the delta given to the "text-changed" callback is a delete(1) while it should be delete(9) to remove everything. However I have serious doubts that people are currently relying on such a behaviour because it makes handling of composed characters very difficult and is also quite meaningless. Moreover, it makes it impossible to devise sane semantics for merging operations which involve at least one composed character.
Tested on FF 52 on Linux with Quill 1.2.4.
edit: I have no idea how I didn't notice it but #1437 might be related.
edit: fixed formating
The text was updated successfully, but these errors were encountered: