-
Notifications
You must be signed in to change notification settings - Fork 568
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
druid-shell IME api, take two #1619
Commits on Mar 10, 2021
-
Adds APIs for cross-platform text input, and an initial implementation of text input on macOS that allows for dead keys, IME input for Chinese, Japanese, etc. On other platforms, the text input method calls are simulated from key_down events, as a temporary measure until we can properly implement input methods on those platforms. Also adds a new druid-shell example, `edit_text`, which is a rough, LTR and single-line only implementation of the text input APIs to demonstrate that they work correctly. A massive thanks to yvt's library tcw3 (https://github.com/yvt/Stella2), which was a fantastic blueprint for the structure of this API, as well as indispensable reference when implementing the macOS text input interfaces.
Configuration menu - View commit details
-
Copy full SHA for 14a8a0d - Browse repository at this point
Copy the full SHA 14a8a0dView commit details -
Update druid-shell/src/text_input.rs
Co-authored-by: Colin Rofls <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a79f693 - Browse repository at this point
Copy the full SHA a79f693View commit details -
Add a lot more documentation, switch to
text
moduleAlso contains various small API renamings in response to code review comments.
Configuration menu - View commit details
-
Copy full SHA for fb51714 - Browse repository at this point
Copy the full SHA fb51714View commit details -
Configuration menu - View commit details
-
Copy full SHA for fefc46e - Browse repository at this point
Copy the full SHA fefc46eView commit details -
Configuration menu - View commit details
-
Copy full SHA for f6dd5ef - Browse repository at this point
Copy the full SHA f6dd5efView commit details -
Configuration menu - View commit details
-
Copy full SHA for 95929e1 - Browse repository at this point
Copy the full SHA 95929e1View commit details -
Configuration menu - View commit details
-
Copy full SHA for de2d7cc - Browse repository at this point
Copy the full SHA de2d7ccView commit details -
Configuration menu - View commit details
-
Copy full SHA for 46cb74b - Browse repository at this point
Copy the full SHA 46cb74bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 14b8f5a - Browse repository at this point
Copy the full SHA 14b8f5aView commit details -
Minor doc tweaks in druid-shell/src/text.rs
This started out as me wanting to just rewrap everything to 80 columns, and then turned into a few little additional touchups.
Configuration menu - View commit details
-
Copy full SHA for e1fec97 - Browse repository at this point
Copy the full SHA e1fec97View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5b186d9 - Browse repository at this point
Copy the full SHA 5b186d9View commit details -
Have separate acquire & release methods for IME locking
We'll need something like this in druid, because we need to know when we have to update the app data.
Configuration menu - View commit details
-
Copy full SHA for caf3ee2 - Browse repository at this point
Copy the full SHA caf3ee2View commit details -
Configuration menu - View commit details
-
Copy full SHA for d298c52 - Browse repository at this point
Copy the full SHA d298c52View commit details -
Handle a bit more when simulating input
This isn't great, but it adds tab/return/delete, which feels like the bare minimum; we can implement more as future work.
Configuration menu - View commit details
-
Copy full SHA for b7e7ac2 - Browse repository at this point
Copy the full SHA b7e7ac2View commit details -
Configuration menu - View commit details
-
Copy full SHA for bb169a6 - Browse repository at this point
Copy the full SHA bb169a6View commit details