We have already a lot of tickets, but I've been playing with IMEs quite a lot when reviewing #887 and I think that there may be new things here:






@f1ames, could you check these scenarios โ whether they are already reported?
The 2nd one (_2 (Firefox)_) looks familiar, however I could not find the issue, the closest one is ckeditor/ckeditor5#3084, but it might be a different case.
Also the 4th and 5th (_4 (Safari)_ and _5 (Chrome)_) one seems similar to a problem we have with composition in non-styled elements. As far as I remember it was fixed by ckeditor/ckeditor5#3082 or another ticket related to selection. But the cause may be different due to additional styling.
Generally, looks like new cases to handle ;)
Just stumbled upon 6th case again. This is pretty bad :(
spanish.Text disappears and appears again.

OS: MacOS X
Browser: Safari
Release: 0.11.0
Went through all reported issue to see if they are still reproducible:
Works fine (both using keyboard and mouse). Only difference is that on Safari inserted character is selected (when inserted via keyboard) - as far as I remember it is a native behaviour:

Works as shown in original gif on Chrome, FF and Safari. Additionally on FF after pressing first ยด you have to press a two times to make it being inserted (first keypress doesn't change anything). Similar to ckeditor/ckeditor5#3084.
Works in Chrome as shown in an original gif and a little different in Safari:

Composition on Safari just breaks in this case:

Chrome still broken, Safari behaves similar like in previous case (4.) having broken composition, but it inserts two characters instead of one.
Behaves as shown on original gif in Chrome. Different on Firefox:

and Safari:

To sum up from this 6 issues, first one (1.) got resolved in the meantime. Rest is still reproducible.
Still reproducible.
On Chrome pressing ยด on such selection doesn't insert any character or change the selection. On Safari it behaves as described in the issue.
While doing some debugging, discovered that the 2 (Firefox) case from https://github.com/ckeditor/ckeditor5-typing/issues/95#issue-217954180 is caused by the fact of rerendering children during composition.
When it comes to 6 (Chrome) issue from the description, it seems that the reason for this is native Chrome issue mentioned here - https://github.com/ckeditor/ckeditor5-engine/issues/898#issuecomment-371509154. When removing inlineFiller Chrome moves selection by the amount of characters which were removed - that's why composition starts in some different place...
This does not happen in Safari and Firefox so there the cause must be different (the behaviour is also different).
Extracted 6 (Chrome) to https://github.com/ckeditor/ckeditor5-engine/issues/1349
After first implementation of https://github.com/ckeditor/ckeditor5-engine/issues/1417 I went through above issues once again to see what was fixed:
Both 3 and 5 are connected with typing on the end of the link, so the cause here might be different (probably it can be fixed with the first inline fillers improvement - https://github.com/ckeditor/ckeditor5-engine/issues/1342).
Didn't analysed the last issue in depth, but it seems like mutations are not properly handled and model/view is not updated with typed change so renderer rerenders the DOM to its previous state.
My suggestion is to extract unresolved issues (3 and 5) to a separate ticket as they both concern composition on the end of the link and also the last one (https://github.com/ckeditor/ckeditor5-typing/issues/95#issuecomment-333519559) to another separate ticket.
This way we could close this one together with https://github.com/ckeditor/ckeditor5-engine/issues/1417. Also maintaining tickets with one issue (or few issues but with similar cause) is easier that handling above ticket where we have 7 cases (some already or soon fixed). WDYT @Reinmar ?
Extracted link related cases to https://github.com/ckeditor/ckeditor5-typing/issues/149 and issue reported by @Mgsy to https://github.com/ckeditor/ckeditor5-typing/issues/150.
This means we can close this issue together with https://github.com/ckeditor/ckeditor5-engine/issues/1417.
My suggestion is to extract unresolved issues (3 and 5) to a separate ticket as they both concern composition on the end of the link and also the last one (#95 (comment)) to another separate ticket.
This way we could close this one together with ckeditor/ckeditor5-engine#1417. Also maintaining tickets with one issue (or few issues but with similar cause) is easier that handling above ticket where we have 7 cases (some already or soon fixed). WDYT @Reinmar ?
I see I'm late to the party :D But yes, it sounds very good.
Most helpful comment
I see I'm late to the party :D But yes, it sounds very good.