-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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: A symptom of characters being copied when there are multiple TextEdits. #4374
Conversation
@@ -44,6 +44,10 @@ pub struct TextEditState { | |||
#[cfg_attr(feature = "serde", serde(skip))] | |||
pub(crate) has_ime: bool, | |||
|
|||
// target ID for IME candidate. | |||
#[cfg_attr(feature = "serde", serde(skip))] | |||
pub(crate) ime_target_id: Id, |
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.
Won't this always be the same Id
as the key used to find TextEditState
?
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.
Yes, it only stores TextEdit ID.
It's currently working fine without any problems.
If something is wrong or needs to be fixed, please fix it or let me know.
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.
That the code is working fine is not enough. I need to maintain this, and so I need to understand it. Storing the Id
here makes no sense to me, since it is already the key.
Blocked on #4358 |
for example, Please review. |
…oses focus. (#4896) Fix: Ensures correct IME behavior when the text input area gains or loses focus. Fix: Handling `state.ime_enabled` in multiple `TextEdit`. Fix: A symptom of characters being copied when there are multiple TextEdits. * Related #4137 * Related #4358 * Closes #4374 * Related #4436 * Related #4794 * Related #4908 * Related #5008 Fix Issues: When focus is moved elsewhere, you must set `state.ime_enabled = false`, otherwise the IME will have problems when focus returns. Fix Issues: A symptom of characters being copied when there are multiple TextEdits. Deletes all current `IME events`, preventing them from being copied to `other TextEdits`, without saving the `TextEdit ID`, ( Related Issues: Some `LINUX` seem to trigger an IME enable event on startup. So, when we gained focus, we do `state.ime_enabled = false`. )
…oses focus. (emilk#4896) Fix: Ensures correct IME behavior when the text input area gains or loses focus. Fix: Handling `state.ime_enabled` in multiple `TextEdit`. Fix: A symptom of characters being copied when there are multiple TextEdits. * Related emilk#4137 * Related emilk#4358 * Closes emilk#4374 * Related emilk#4436 * Related emilk#4794 * Related emilk#4908 * Related emilk#5008 Fix Issues: When focus is moved elsewhere, you must set `state.ime_enabled = false`, otherwise the IME will have problems when focus returns. Fix Issues: A symptom of characters being copied when there are multiple TextEdits. Deletes all current `IME events`, preventing them from being copied to `other TextEdits`, without saving the `TextEdit ID`, ( Related Issues: Some `LINUX` seem to trigger an IME enable event on startup. So, when we gained focus, we do `state.ime_enabled = false`. )
…oses focus. (emilk#4896) Fix: Ensures correct IME behavior when the text input area gains or loses focus. Fix: Handling `state.ime_enabled` in multiple `TextEdit`. Fix: A symptom of characters being copied when there are multiple TextEdits. * Related emilk#4137 * Related emilk#4358 * Closes emilk#4374 * Related emilk#4436 * Related emilk#4794 * Related emilk#4908 * Related emilk#5008 Fix Issues: When focus is moved elsewhere, you must set `state.ime_enabled = false`, otherwise the IME will have problems when focus returns. Fix Issues: A symptom of characters being copied when there are multiple TextEdits. Deletes all current `IME events`, preventing them from being copied to `other TextEdits`, without saving the `TextEdit ID`, ( Related Issues: Some `LINUX` seem to trigger an IME enable event on startup. So, when we gained focus, we do `state.ime_enabled = false`. )
Event::Ime
#4358Fix: A symptom of characters being copied when there are multiple TextEdits.