-
Notifications
You must be signed in to change notification settings - Fork 3.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix editing with IMEs #2368
Comments
I was doing some research on handling IMEs, and found these articles helpful: Background in what IMEs are and how they work: Some potential solutions for handling IME events: |
This issue is also bothering me, I hope to have a better solution as soon as possible. |
FYI, Android support published to Slate @ 0.44.12 four days ago. There are still some bugs but a huge improvement over existing support. |
@thesunny Just wanted to report that I updated to the latest slate and it's working SO much better in Android. Thank you for fixing this! |
I'm working on fixing the remaining Android bugs now. In order to be more efficient, please submit bugs and help with testing over in this issue: Fix all showstopper bugs in Slate on Android (Help us by reporting and testing bugs) |
Is there any plan for fixing the Japanese Language bugs...?? |
Hi @thesunny @ianstormtaylor @milkman4 |
@ianstormtaylor I believe each type of IME should probably receive its own issue. A lot of problems overlap, but some are unique to each, and require special "emulation" to make them work with Slate. I've been spending a lot of time looking into / fixing IME related issues over the past few weeks and here are some findings / thoughts.
This is not an exhaustive list, and I'm not sure the best way to divide and tackle all of these issues from a process or code POV. One large PR? How do we organize this in the code without a bunch of special-case emulation code scattered around? Should we make a plugin just for composition? |
Here's some more specific information about the particular composition problems in Slate: You can use this tool to explore the different events: https://w3c.github.io/uievents/tools/key-event-viewer.html MacOS Opt + letter accented composition
MacOS long-press accented character selection. More details here
Hangul input
|
Using Chinese pinyin input method character loss and cursor position problems still exist |
Fixed by #3093. |
We have this IME issue in a massive production app that's stuck on Is there any hope for us to fix this bug without doing the massive rewrite to the JSON-version of slate? We're locked into the immutable version for now |
@dawsbot Just so you are aware, there is no Android support in the latest Slate version. Not sure how well other IME's are supported. |
Is there some roadmap about IME? |
From what I understand, IME is something that should be working in the current version but without Android support. Android support is significantly different from supporting other browsers. Ian has stated that his use case does not include Android support and therefore it is something the community will have to build. I built a version of Android support about a year ago which I contributed but it did not make it through the upgrade to the latest version which was a rewrite. I'm considering a paid version of Android support here #3573. |
Perhaps I'm describing something different here. I'm not using Android, the bug we have in all browsers is the final character in Korean is removed from text inputs. This sounds like what @undeadfrost mentioned above. Should I create a new GitHub issue for this? Is there hope for a fix on this bug in a pre- |
Do you want to request a feature or report a bug?
Bug.
What's the current behavior?
Right now Slate doesn't work well with IME's, for different reasons. There are a few different issues we are tracking that we hope will make this better.
don't re-render editor during compositions #2067 — we added a hack to re-render the placeholder when a composition starts, but it's re-rendering the entire editor, which we think has an issue with IME's. This would be the first thing to fix.fix editing with "soft keyboards" (eg. Android, IMEs) #2062 — second, @thesunny has been awesome enough to do a bunch of research to document the exact order of composition events on Android devices with IME-based keyboards. Although fixing this issue would likely guarantee IME support, it's also possible that there's a smaller amount of work that can get IME support without full Android support first. (Just implementing desktop Chrome's behaviors.)
There might be other things we're not aware of. But until these are solved, IME's will have issues. If you are experience with IME's and want to help, that would be amazing! I'm going to be referring all IME-related bugs here in the meantime, to focus efforts.
The text was updated successfully, but these errors were encountered: