-
-
Notifications
You must be signed in to change notification settings - Fork 21.4k
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 TextEdit IME issues #87479
Fix TextEdit IME issues #87479
Conversation
I tested the big PR and found that the issue I deducted in #83795 has been fixed. So this PR likely still fixes it. |
} | ||
text.invalidate_cache(get_caret_line(i), get_caret_column(i), true, t, structured_text_parser(st_parser, st_args, t)); | ||
} | ||
if (has_ime_text()) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit
: _update_ime_text
already checks has_ime_text
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If I don't check for it, it would run the other branch in _update_ime_text()
and invalidates the text cache unnecessarily.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I cannot speak on whether this is a good bunch of changes or not, but a few thoughts on the docs:
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me overall. Let's get this merged to unblock the next batch of fixes :)
Thanks! |
IME text is now applied before most actions, so editing text and changing carets won't cause issues.
IME is applied before the right click context menu appears, before using the edit menu for any operation, and when clicking elsewhere in the TextEdit.
Scrolling with the mousewheel is no longer blocked when the IME is open.
Updating the IME will adjust the view to the caret and update the IME window position.