diff options
Diffstat (limited to 'src/drivers')
| -rw-r--r-- | src/drivers/Wayland/Fl_Wayland_Screen_Driver.cxx | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/drivers/Wayland/Fl_Wayland_Screen_Driver.cxx b/src/drivers/Wayland/Fl_Wayland_Screen_Driver.cxx index 115f9765c..c8bbcefb0 100644 --- a/src/drivers/Wayland/Fl_Wayland_Screen_Driver.cxx +++ b/src/drivers/Wayland/Fl_Wayland_Screen_Driver.cxx @@ -770,6 +770,9 @@ static void wl_keyboard_key(void *data, struct wl_keyboard *wl_keyboard, } } else { remove_int_vector(key_vector, for_key_vector); + // Under KDE, the time value received doesn't change at each keystroke as it should, + // so we remove any key repeat timer at each FL_KEYUP event. + Fl::remove_timeout((Fl_Timeout_Handler)key_repeat_timer_cb); } Fl::e_text = buf; Fl::e_length = (int)strlen(buf); |
