diff --git a/docs/changelog.rst b/docs/changelog.rst index ed2db627f..b7b588704 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -13,6 +13,7 @@ Changelog - Fix the ``*_with_cwd`` actions using the cwd of the overlay window rather than the underlying window's cwd (:iss:`1045`) +- Fix incorrect key repeat rate on wayland (:pull:`1055`) 0.12.3 [2018-09-29] ------------------------------ diff --git a/glfw/wl_init.c b/glfw/wl_init.c index b622b0bf9..ca3904e9f 100644 --- a/glfw/wl_init.c +++ b/glfw/wl_init.c @@ -407,7 +407,7 @@ static void dispatchPendingKeyRepeats(id_type timer_id, void *data) { if (_glfw.wl.keyRepeatInfo.keyboardFocus != _glfw.wl.keyboardFocus || _glfw.wl.keyboardRepeatRate == 0) return; glfw_xkb_handle_key_event(_glfw.wl.keyRepeatInfo.keyboardFocus, &_glfw.wl.xkb, _glfw.wl.keyRepeatInfo.key, GLFW_REPEAT); - changeTimerInterval(&_glfw.wl.eventLoopData, _glfw.wl.keyRepeatInfo.keyRepeatTimer, ((double)_glfw.wl.keyboardRepeatRate) / 1000.0); + changeTimerInterval(&_glfw.wl.eventLoopData, _glfw.wl.keyRepeatInfo.keyRepeatTimer, (1.0 / (double)_glfw.wl.keyboardRepeatRate)); toggleTimer(&_glfw.wl.eventLoopData, _glfw.wl.keyRepeatInfo.keyRepeatTimer, 1); }