|
|
|
@ -724,7 +724,11 @@ void TabBox::updateKeyMapping() |
|
|
|
int altpos = 0; |
|
|
|
int altpos = 0; |
|
|
|
int winpos = 0; |
|
|
|
int winpos = 0; |
|
|
|
int winmodpos = -1; |
|
|
|
int winmodpos = -1; |
|
|
|
|
|
|
|
#ifdef QT3_SUPPORT |
|
|
|
|
|
|
|
int winmod = KKeyNative::modX(KKey::WIN); |
|
|
|
|
|
|
|
#else |
|
|
|
int winmod = KKeyNative::modXWin(); |
|
|
|
int winmod = KKeyNative::modXWin(); |
|
|
|
|
|
|
|
#endif |
|
|
|
while( winmod > 0 ) // get position of the set bit in winmod
|
|
|
|
while( winmod > 0 ) // get position of the set bit in winmod
|
|
|
|
{ |
|
|
|
{ |
|
|
|
winmod >>= 1; |
|
|
|
winmod >>= 1; |
|
|
|
@ -1057,10 +1061,17 @@ void Workspace::closeTabBox() |
|
|
|
void Workspace::tabBoxKeyRelease( const XKeyEvent& ev ) |
|
|
|
void Workspace::tabBoxKeyRelease( const XKeyEvent& ev ) |
|
|
|
{ |
|
|
|
{ |
|
|
|
unsigned int mk = ev.state & |
|
|
|
unsigned int mk = ev.state & |
|
|
|
|
|
|
|
#ifdef QT3_SUPPORT |
|
|
|
|
|
|
|
(KKeyNative::modX(KKey::SHIFT) | |
|
|
|
|
|
|
|
KKeyNative::modX(KKey::CTRL) | |
|
|
|
|
|
|
|
KKeyNative::modX(KKey::ALT) | |
|
|
|
|
|
|
|
KKeyNative::modX(KKey::WIN) ); |
|
|
|
|
|
|
|
#else |
|
|
|
(KKeyNative::modXShift() | |
|
|
|
(KKeyNative::modXShift() | |
|
|
|
KKeyNative::modXCtrl() | |
|
|
|
KKeyNative::modXCtrl() | |
|
|
|
KKeyNative::modXAlt() | |
|
|
|
KKeyNative::modXAlt() | |
|
|
|
KKeyNative::modXWin() ); |
|
|
|
KKeyNative::modXWin() ); |
|
|
|
|
|
|
|
#endif |
|
|
|
// ev.state is state before the key release, so just checking mk being 0 isn't enough
|
|
|
|
// ev.state is state before the key release, so just checking mk being 0 isn't enough
|
|
|
|
// using XQueryPointer() also doesn't seem to work well, so the check that all
|
|
|
|
// using XQueryPointer() also doesn't seem to work well, so the check that all
|
|
|
|
// modifiers are released: only one modifier is active and the currently released
|
|
|
|
// modifiers are released: only one modifier is active and the currently released
|
|
|
|
|