keymap_ui: Fix bug introduced in #35208 (#35237)

Closes #ISSUE

Fixes a bug that was cherry picked onto stable and preview branches
introduced in #35208 whereby modifier keys would show up and not be
removable when editing a keybind

Release Notes:

- (preview only) Keymap Editor: Fixed an issue introduced in v0.197.2
whereby modifier keys would show up and not be removable while recording
keystrokes in the keybind edit modal
This commit is contained in:
Ben Kunkle
2025-07-28 17:27:10 -04:00
committed by GitHub
parent f3dc842ce6
commit fa6b1a0114
2 changed files with 4 additions and 6 deletions
+1 -5
View File
@@ -534,11 +534,7 @@ impl Modifiers {
/// Checks if this [`Modifiers`] is a subset of another [`Modifiers`].
pub fn is_subset_of(&self, other: &Modifiers) -> bool {
(other.control || !self.control)
&& (other.alt || !self.alt)
&& (other.shift || !self.shift)
&& (other.platform || !self.platform)
&& (other.function || !self.function)
(*other & *self) == *self
}
}
+3 -1
View File
@@ -3114,7 +3114,9 @@ impl KeystrokeInput {
) {
let keystrokes_len = self.keystrokes.len();
if event.modifiers.is_subset_of(&self.previous_modifiers) {
if self.previous_modifiers.modified()
&& event.modifiers.is_subset_of(&self.previous_modifiers)
{
self.previous_modifiers &= event.modifiers;
cx.stop_propagation();
return;