[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [14515] trunk/blender/intern/ghost/intern/ GHOST_SystemX11.cpp: use detectable autorepeat for X11,
Campbell Barton
ideasman42 at gmail.com
Tue Apr 22 16:32:45 CEST 2008
Revision: 14515
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=14515
Author: campbellbarton
Date: 2008-04-22 16:32:45 +0200 (Tue, 22 Apr 2008)
Log Message:
-----------
use detectable autorepeat for X11,
this way, holding a key will only give multiple down events, father then down,up,down,up.... etc.
This is needed for apricot so they can play games in blenders :)
Modified Paths:
--------------
trunk/blender/intern/ghost/intern/GHOST_SystemX11.cpp
Modified: trunk/blender/intern/ghost/intern/GHOST_SystemX11.cpp
===================================================================
--- trunk/blender/intern/ghost/intern/GHOST_SystemX11.cpp 2008-04-22 10:34:41 UTC (rev 14514)
+++ trunk/blender/intern/ghost/intern/GHOST_SystemX11.cpp 2008-04-22 14:32:45 UTC (rev 14515)
@@ -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 @@
}
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
More information about the Bf-blender-cvs
mailing list