summaryrefslogtreecommitdiff
path: root/core/input
diff options
context:
space:
mode:
authorEric M <itsjusteza@gmail.com>2022-10-23 17:08:47 +1000
committerEric M <itsjusteza@gmail.com>2023-01-12 00:10:44 +1000
commit7b66806dd3afb77da2e7c681b342b40d392f6ccc (patch)
tree757d997fdafb78775197c50ef358f42dd2e5d552 /core/input
parentfcba87e696d58912838d8a4a6987b10efa28e78f (diff)
Make InputEventAction as_text() return the text of the first valid event for the action.
Diffstat (limited to 'core/input')
-rw-r--r--core/input/input_event.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/core/input/input_event.cpp b/core/input/input_event.cpp
index f421ecb22d..eb62367f3b 100644
--- a/core/input/input_event.cpp
+++ b/core/input/input_event.cpp
@@ -1408,7 +1408,18 @@ bool InputEventAction::action_match(const Ref<InputEvent> &p_event, bool p_exact
}
String InputEventAction::as_text() const {
- return vformat(RTR("Input Action %s was %s"), action, pressed ? "pressed" : "released");
+ const List<Ref<InputEvent>> *events = InputMap::get_singleton()->action_get_events(action);
+ if (!events) {
+ return String();
+ }
+
+ for (const Ref<InputEvent> &E : *events) {
+ if (E.is_valid()) {
+ return E->as_text();
+ }
+ }
+
+ return String();
}
String InputEventAction::to_string() {