Fix handling multiple "physical key" events in the single input map action.

This commit is contained in:
bruvzg 2021-10-19 22:19:41 +03:00
parent a4fbb67902
commit a975682ef6

View file

@ -452,8 +452,13 @@ bool InputEventKey::is_match(const Ref<InputEvent> &p_event, bool p_exact_match)
return false;
}
return keycode == key->keycode &&
(!p_exact_match || get_modifiers_mask() == key->get_modifiers_mask());
if (keycode == 0) {
return physical_keycode == key->physical_keycode &&
(!p_exact_match || get_modifiers_mask() == key->get_modifiers_mask());
} else {
return keycode == key->keycode &&
(!p_exact_match || get_modifiers_mask() == key->get_modifiers_mask());
}
}
void InputEventKey::_bind_methods() {