Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--intern/ghost/intern/GHOST_SystemX11.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/intern/ghost/intern/GHOST_SystemX11.cpp b/intern/ghost/intern/GHOST_SystemX11.cpp
index d6868d143dd..ff1bf51bbb5 100644
--- a/intern/ghost/intern/GHOST_SystemX11.cpp
+++ b/intern/ghost/intern/GHOST_SystemX11.cpp
@@ -46,6 +46,7 @@
#include <X11/Xatom.h>
#include <X11/keysym.h>
+#include <X11/XKBlib.h> /* allow detectable autorepeate */
#ifdef __sgi
@@ -111,6 +112,18 @@ GHOST_SystemX11(
}
m_start_time = GHOST_TUns64(tv.tv_sec*1000 + tv.tv_usec/1000);
+
+
+ /* use detectable autorepeate, mac and windows also do this */
+ int use_xkb;
+ int xkb_opcode, xkb_event, xkb_error;
+ int xkb_major = XkbMajorVersion, xkb_minor = XkbMinorVersion;
+
+ use_xkb = XkbQueryExtension(m_display, &xkb_opcode, &xkb_event, &xkb_error, &xkb_major, &xkb_minor);
+ if (use_xkb) {
+ XkbSetDetectableAutoRepeat(m_display, true, NULL);
+ }
+
}
GHOST_TSuccess