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
The first character shows the IME helper off screen.
The second character shows it where it should be on the first character.
The root cause of this is because we keep the textarea off screen until it a compositionupdate event fire at which point it's moved to where the cursor is. One way this issue could be fixed is by no longer hiding the textarea offscreen and instead keeping it in sync with the cursor. Syncing the position on keydown would probably fix this issue because it would happen before updatecomposition fires.
I think the only reason we moved it off screen to begin with was because some browsers show the resize handle even when the textarea has a size of 0x0. There is a standard CSS rule resize that can hide this though so it might be worth bringing it back and keeping it in sync.
Totally missed this. No @Tyriar the only reason it is kept off-screen is to make it completely invisible, so if we can achieve this by keeping the textarea in-sync, then 👍 .
I took a look at how CodeMirror handles this and it seems that it keeps the textarea in-sync as well:
Related to microsoft/vscode#11334
The first character shows the IME helper off screen.
The second character shows it where it should be on the first character.
The root cause of this is because we keep the textarea off screen until it a
compositionupdate
event fire at which point it's moved to where the cursor is. One way this issue could be fixed is by no longer hiding the textarea offscreen and instead keeping it in sync with the cursor. Syncing the position onkeydown
would probably fix this issue because it would happen beforeupdatecomposition
fires.I think the only reason we moved it off screen to begin with was because some browsers show the resize handle even when the textarea has a size of 0x0. There is a standard CSS rule
resize
that can hide this though so it might be worth bringing it back and keeping it in sync.Details
Steps to reproduce
The text was updated successfully, but these errors were encountered: