diff --git a/src/uterm.h b/src/uterm.h index 89a89bb..24caf14 100644 --- a/src/uterm.h +++ b/src/uterm.h @@ -298,6 +298,9 @@ void uterm_input_sleep(struct uterm_input *input); void uterm_input_wake_up(struct uterm_input *input); bool uterm_input_is_awake(struct uterm_input *input); +void uterm_input_keysym_to_string(struct uterm_input *input, + uint32_t keysym, char *str, size_t size); + /* * System Monitor * This watches the system for new seats, graphics devices or other devices that diff --git a/src/uterm_input.c b/src/uterm_input.c index 387e845..53b0731 100644 --- a/src/uterm_input.c +++ b/src/uterm_input.c @@ -465,3 +465,16 @@ bool uterm_input_is_awake(struct uterm_input *input) return input->awake; } + +void uterm_input_keysym_to_string(struct uterm_input *input, + uint32_t keysym, char *str, size_t size) +{ + if (!str || !size) + return; + if (!input) { + *str = 0; + return; + } + + kbd_desc_keysym_to_string(input->desc, keysym, str, size); +}