diff options
| author | Rémi Verschelde | 2017-06-08 07:43:18 +0200 |
|---|---|---|
| committer | GitHub | 2017-06-08 07:43:18 +0200 |
| commit | b52466f79353e10a7984c835576a67502631b27e (patch) | |
| tree | 5311e3cf2f20da9fdf04d997c0fcb00a7597dd8f /core/os/input_event.cpp | |
| parent | bee81d52148baf01cd15f9d79dba35bcffdc2fe6 (diff) | |
| parent | c218390864ea106e00632037f97868c21cbe7d2c (diff) | |
| download | godot-b52466f79353e10a7984c835576a67502631b27e.tar.gz godot-b52466f79353e10a7984c835576a67502631b27e.tar.zst godot-b52466f79353e10a7984c835576a67502631b27e.zip | |
Diffstat (limited to 'core/os/input_event.cpp')
| -rw-r--r-- | core/os/input_event.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/core/os/input_event.cpp b/core/os/input_event.cpp index f96e08f47..dbdf9628e 100644 --- a/core/os/input_event.cpp +++ b/core/os/input_event.cpp @@ -282,7 +282,10 @@ bool InputEventKey::action_match(const Ref<InputEvent> &p_event) const { if (key.is_null()) return false; - return get_scancode_with_modifiers() == key->get_scancode_with_modifiers(); + uint32_t code = get_scancode_with_modifiers(); + uint32_t event_code = key->get_scancode_with_modifiers(); + + return get_scancode() == key->get_scancode() && (!key->is_pressed() || (code & event_code) == code); } void InputEventKey::_bind_methods() { |
