From kde-commits Tue Mar 29 14:25:55 2005 From: =?utf-8?q?Lubo=C5=A1=20Lu=C5=88=C3=A1k?= Date: Tue, 29 Mar 2005 14:25:55 +0000 To: kde-commits Subject: kdelibs/kdecore Message-Id: <20050329142555.49ACA3CF () office ! kde ! org> X-MARC-Message: https://marc.info/?l=kde-commits&m=111210638304088 CVS commit by lunakl: Ignore also Mode Switch modifier. BUG: 102742 M +2 -1 kglobalaccel_x11.cpp 1.34 M +8 -0 kkeynative.h 1.14 M +1 -0 kkeynative_x11.cpp 1.24 M +4 -2 kkeyserver_x11.cpp 1.35 M +8 -0 kkeyserver_x11.h 1.17 --- kdelibs/kdecore/kglobalaccel_x11.cpp #1.33:1.34 @@ -69,5 +69,6 @@ static void calculateGrabMasks() KKeyServer::modXLock() | KKeyServer::modXNumLock() | - KKeyServer::modXScrollLock(); + KKeyServer::modXScrollLock() | + KKeyServer::modXModeSwitch(); //kdDebug() << "g_keyModMaskXAccel = " << g_keyModMaskXAccel // << "g_keyModMaskXOnOrOff = " << g_keyModMaskXOnOrOff << endl; --- kdelibs/kdecore/kkeynative.h #1.13:1.14 @@ -241,4 +241,12 @@ class KDECORE_EXPORT KKeyNative */ static uint modXScrollLock(); + + /** + * Returns the X11 Mode_switch modifier mask/flag. + * @return the X11 Mode_switch modifier mask/flag. + * @see accelModMaskX() + * @since 3.5 + */ + static uint modXModeSwitch(); #endif --- kdelibs/kdecore/kkeynative_x11.cpp #1.23:1.24 @@ -193,4 +193,5 @@ uint KKeyNative::modXNumLock() uint KKeyNative::modXLock() { return KKeyServer::modXLock(); } uint KKeyNative::modXScrollLock() { return KKeyServer::modXScrollLock(); } +uint KKeyNative::modXModeSwitch() { return KKeyServer::modXModeSwitch(); } #endif --- kdelibs/kdecore/kkeyserver_x11.cpp #1.34:1.35 @@ -325,5 +325,5 @@ static bool g_bInitializedMods, g_bIniti static bool g_bMacLabels; #ifdef Q_WS_X11 -static uint g_modXNumLock, g_modXScrollLock; +static uint g_modXNumLock, g_modXScrollLock, g_modXModeSwitch; bool initializeMods() @@ -331,5 +331,5 @@ bool initializeMods() XModifierKeymap* xmk = XGetModifierMapping( qt_xdisplay() ); - g_rgModInfo[3].modX = g_modXNumLock = g_modXScrollLock = 0; + g_rgModInfo[3].modX = g_modXNumLock = g_modXScrollLock = g_modXModeSwitch = 0; int min_keycode, max_keycode; @@ -355,4 +355,5 @@ bool initializeMods() case XK_Meta_R: if( !g_rgModInfo[3].modX ) g_rgModInfo[3].modX = mask; break; // Win alternate case XK_Scroll_Lock: g_modXScrollLock = mask; break; // Normally Mod5Mask + case XK_Mode_switch: g_modXModeSwitch = mask; break; } } @@ -610,4 +611,5 @@ uint modXNumLock() { if( !g_bInitiali uint modXWin() { if( !g_bInitializedMods ) { initializeMods(); } return g_rgModInfo[3].modX; } uint modXScrollLock() { if( !g_bInitializedMods ) { initializeMods(); } return g_modXScrollLock; } +uint modXModeSwitch() { if( !g_bInitializedMods ) { initializeMods(); } return g_modXModeSwitch; } uint accelModMaskX() --- kdelibs/kdecore/kkeyserver_x11.h #1.16:1.17 @@ -326,4 +326,12 @@ namespace KKeyServer /** + * Returns the X11 Mode_switch modifier mask/flag. + * @return the X11 Mode_switch modifier mask/flag. + * @see accelModMaskX() + * @since 3.5 + */ + KDECORE_EXPORT uint modXModeSwitch(); + + /** * Returns bitwise OR'ed mask containing Shift, Ctrl, Alt, and * Win (if available).