[DEBUG] MacOs ==> bug on the alt-left
This commit is contained in:
parent
6e2eea031a
commit
3f92bff9a0
@ -90,7 +90,7 @@ static std::vector<std::pair<uint16_t,unichar>> g_listlasteventDown;
|
|||||||
// We remap it to the correct tabulation.
|
// We remap it to the correct tabulation.
|
||||||
c = 9;
|
c = 9;
|
||||||
}
|
}
|
||||||
GALE_WARNING("Key Event " << c << " = '" << char(c) << "' isDown=" << _isDown << " keycode=" << keycode);
|
GALE_VERBOSE("Key Event " << c << " = '" << char(c) << "' isDown=" << _isDown << " keycode=" << keycode);
|
||||||
bool find = true;
|
bool find = true;
|
||||||
enum gale::key::keyboard keyInput;
|
enum gale::key::keyboard keyInput;
|
||||||
switch (c) {
|
switch (c) {
|
||||||
@ -235,13 +235,13 @@ static std::vector<std::pair<uint16_t,unichar>> g_listlasteventDown;
|
|||||||
if ((bitField & flags) != 0) {
|
if ((bitField & flags) != 0) {
|
||||||
GALE_VERBOSE("Flag change: " << key);
|
GALE_VERBOSE("Flag change: " << key);
|
||||||
if (guiKeyBoardMode.get(key) == false) {
|
if (guiKeyBoardMode.get(key) == false) {
|
||||||
GALE_WARNING(" " << key << " DOWN");
|
GALE_DEBUG(" " << key << " DOWN");
|
||||||
guiKeyBoardMode.update(key, true);
|
guiKeyBoardMode.update(key, true);
|
||||||
MacOs::setKeyboardMove(guiKeyBoardMode, key, true, false);
|
MacOs::setKeyboardMove(guiKeyBoardMode, key, true, false);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (guiKeyBoardMode.get(key) == true) {
|
if (guiKeyBoardMode.get(key) == true) {
|
||||||
GALE_WARNING(" " << key << " UP");
|
GALE_DEBUG(" " << key << " UP");
|
||||||
guiKeyBoardMode.update(key, false);
|
guiKeyBoardMode.update(key, false);
|
||||||
MacOs::setKeyboardMove(guiKeyBoardMode, key, false, false);
|
MacOs::setKeyboardMove(guiKeyBoardMode, key, false, false);
|
||||||
}
|
}
|
||||||
@ -250,7 +250,7 @@ static std::vector<std::pair<uint16_t,unichar>> g_listlasteventDown;
|
|||||||
|
|
||||||
- (void)flagsChanged:(NSEvent *)theEvent {
|
- (void)flagsChanged:(NSEvent *)theEvent {
|
||||||
uint32_t bitField = [theEvent modifierFlags];
|
uint32_t bitField = [theEvent modifierFlags];
|
||||||
GALE_ERROR("flagsChanged : " << std::hex << [theEvent modifierFlags]);
|
GALE_VERBOSE("flagsChanged : " << std::hex << [theEvent modifierFlags]);
|
||||||
#ifdef __MAC_10_12
|
#ifdef __MAC_10_12
|
||||||
[self flagsUpdate:bitField: NSEventModifierFlagCapsLock: gale::key::keyboard::capLock];
|
[self flagsUpdate:bitField: NSEventModifierFlagCapsLock: gale::key::keyboard::capLock];
|
||||||
#else
|
#else
|
||||||
@ -294,11 +294,11 @@ static std::vector<std::pair<uint16_t,unichar>> g_listlasteventDown;
|
|||||||
#else
|
#else
|
||||||
if ((bitField & NSFunctionKeyMask) != 0) {
|
if ((bitField & NSFunctionKeyMask) != 0) {
|
||||||
#endif
|
#endif
|
||||||
GALE_WARNING("NSEventModifierFlagFunction");
|
GALE_VERBOSE("NSEventModifierFlagFunction");
|
||||||
MacOs::setKeyboardMove(guiKeyBoardMode, gale::key::keyboard::contextMenu, true, false);
|
MacOs::setKeyboardMove(guiKeyBoardMode, gale::key::keyboard::contextMenu, true, false);
|
||||||
MacOs::setKeyboardMove(guiKeyBoardMode, gale::key::keyboard::contextMenu, false, false);
|
MacOs::setKeyboardMove(guiKeyBoardMode, gale::key::keyboard::contextMenu, false, false);
|
||||||
}
|
}
|
||||||
GALE_WARNING(" ==> new state special: " << etk::to_string(guiKeyBoardMode));
|
GALE_VERBOSE(" ==> new state special: " << etk::to_string(guiKeyBoardMode));
|
||||||
}
|
}
|
||||||
|
|
||||||
// this generate all the event entry availlable ==> like a big keep focus ...
|
// this generate all the event entry availlable ==> like a big keep focus ...
|
||||||
|
@ -210,7 +210,7 @@ class X11Interface : public gale::Context {
|
|||||||
}
|
}
|
||||||
createX11Context();
|
createX11Context();
|
||||||
createOGlContext();
|
createOGlContext();
|
||||||
// reset the Atom properties ...
|
// Reset the Atom properties.
|
||||||
XAtomSelection = XInternAtom(m_display, "PRIMARY", 0);
|
XAtomSelection = XInternAtom(m_display, "PRIMARY", 0);
|
||||||
XAtomClipBoard = XInternAtom(m_display, "CLIPBOARD", 0);
|
XAtomClipBoard = XInternAtom(m_display, "CLIPBOARD", 0);
|
||||||
XAtomTargetString = XInternAtom(m_display, "STRING", 0);
|
XAtomTargetString = XInternAtom(m_display, "STRING", 0);
|
||||||
@ -344,9 +344,9 @@ class X11Interface : public gale::Context {
|
|||||||
char * atomNameSelection = XGetAtomName(m_display, req->selection);
|
char * atomNameSelection = XGetAtomName(m_display, req->selection);
|
||||||
char * atomNameTarget = XGetAtomName(m_display, req->target);
|
char * atomNameTarget = XGetAtomName(m_display, req->target);
|
||||||
GALE_INFO(" from: " << atomNameProperty << " request=" << atomNameSelection << " in " << atomNameTarget);
|
GALE_INFO(" from: " << atomNameProperty << " request=" << atomNameSelection << " in " << atomNameTarget);
|
||||||
if (nullptr != atomNameProperty) { XFree(atomNameProperty); }
|
if (atomNameProperty != nullptr) { XFree(atomNameProperty); }
|
||||||
if (nullptr != atomNameSelection) { XFree(atomNameSelection); }
|
if (atomNameSelection != nullptr) { XFree(atomNameSelection); }
|
||||||
if (nullptr != atomNameTarget) { XFree(atomNameTarget); }
|
if (atomNameTarget != nullptr) { XFree(atomNameTarget); }
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -586,6 +586,7 @@ class X11Interface : public gale::Context {
|
|||||||
X11_INFO("X11 event : " << event.type << " = 'KeyPress/KeyRelease' ");
|
X11_INFO("X11 event : " << event.type << " = 'KeyPress/KeyRelease' ");
|
||||||
{
|
{
|
||||||
X11_DEBUG("eventKey : " << event.xkey.keycode << " state : " << event.xkey.state);
|
X11_DEBUG("eventKey : " << event.xkey.keycode << " state : " << event.xkey.state);
|
||||||
|
/*
|
||||||
if (event.xkey.state & (1<<0) ) {
|
if (event.xkey.state & (1<<0) ) {
|
||||||
//GALE_DEBUG(" Special Key : SHIFT");
|
//GALE_DEBUG(" Special Key : SHIFT");
|
||||||
m_guiKeyBoardMode.setShift(true);
|
m_guiKeyBoardMode.setShift(true);
|
||||||
@ -631,6 +632,7 @@ class X11Interface : public gale::Context {
|
|||||||
} else {
|
} else {
|
||||||
m_guiKeyBoardMode.setAltGr(false);
|
m_guiKeyBoardMode.setAltGr(false);
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
bool find = true;
|
bool find = true;
|
||||||
enum gale::key::keyboard keyInput;
|
enum gale::key::keyboard keyInput;
|
||||||
switch (event.xkey.keycode) {
|
switch (event.xkey.keycode) {
|
||||||
@ -676,17 +678,17 @@ class X11Interface : public gale::Context {
|
|||||||
case 76: keyInput = gale::key::keyboard::f10; break;
|
case 76: keyInput = gale::key::keyboard::f10; break;
|
||||||
case 95: keyInput = gale::key::keyboard::f11; break;
|
case 95: keyInput = gale::key::keyboard::f11; break;
|
||||||
case 96: keyInput = gale::key::keyboard::f12; break;
|
case 96: keyInput = gale::key::keyboard::f12; break;
|
||||||
case 66: keyInput = gale::key::keyboard::capLock; m_guiKeyBoardMode.setCapsLock( (event.type == KeyPress) ? true : false); break;
|
case 66: keyInput = gale::key::keyboard::capLock; m_guiKeyBoardMode.setCapsLock (event.type == KeyPress); break;
|
||||||
case 50: keyInput = gale::key::keyboard::shiftLeft; m_guiKeyBoardMode.setShift ( (event.type == KeyPress) ? true : false); break;
|
case 50: keyInput = gale::key::keyboard::shiftLeft; m_guiKeyBoardMode.setShiftLeft (event.type == KeyPress); break;
|
||||||
case 62: keyInput = gale::key::keyboard::shiftRight; m_guiKeyBoardMode.setShift ( (event.type == KeyPress) ? true : false); break;
|
case 62: keyInput = gale::key::keyboard::shiftRight; m_guiKeyBoardMode.setShiftRight(event.type == KeyPress); break;
|
||||||
case 37: keyInput = gale::key::keyboard::ctrlLeft; m_guiKeyBoardMode.setCtrl ( (event.type == KeyPress) ? true : false); break;
|
case 37: keyInput = gale::key::keyboard::ctrlLeft; m_guiKeyBoardMode.setCtrlLeft (event.type == KeyPress); break;
|
||||||
case 105: keyInput = gale::key::keyboard::ctrlRight; m_guiKeyBoardMode.setCtrl ( (event.type == KeyPress) ? true : false); break;
|
case 105: keyInput = gale::key::keyboard::ctrlRight; m_guiKeyBoardMode.setCtrlRight (event.type == KeyPress); break;
|
||||||
case 133: keyInput = gale::key::keyboard::metaLeft; m_guiKeyBoardMode.setMeta ( (event.type == KeyPress) ? true : false); break;
|
case 133: keyInput = gale::key::keyboard::metaLeft; m_guiKeyBoardMode.setMetaLeft (event.type == KeyPress); break;
|
||||||
case 134: keyInput = gale::key::keyboard::metaRight; m_guiKeyBoardMode.setMeta ( (event.type == KeyPress) ? true : false); break;
|
case 134: keyInput = gale::key::keyboard::metaRight; m_guiKeyBoardMode.setMetaRight (event.type == KeyPress); break;
|
||||||
case 64: keyInput = gale::key::keyboard::alt; m_guiKeyBoardMode.setAlt ( (event.type == KeyPress) ? true : false); break;
|
case 64: keyInput = gale::key::keyboard::alt; m_guiKeyBoardMode.setAltLeft (event.type == KeyPress); break;
|
||||||
case 108: keyInput = gale::key::keyboard::altGr; m_guiKeyBoardMode.setAltGr ( (event.type == KeyPress) ? true : false); break;
|
case 108: keyInput = gale::key::keyboard::altGr; m_guiKeyBoardMode.setAltRight (event.type == KeyPress); break;
|
||||||
case 135: keyInput = gale::key::keyboard::contextMenu; break;
|
case 135: keyInput = gale::key::keyboard::contextMenu; break;
|
||||||
case 77: keyInput = gale::key::keyboard::numLock; m_guiKeyBoardMode.setNumLock ( (event.type == KeyPress) ? true : false); break;
|
case 77: keyInput = gale::key::keyboard::numLock; m_guiKeyBoardMode.setNumLock (event.type == KeyPress); break;
|
||||||
case 91: // Suppr on keypad
|
case 91: // Suppr on keypad
|
||||||
find = false;
|
find = false;
|
||||||
if(m_guiKeyBoardMode.getNumLock() == true){
|
if(m_guiKeyBoardMode.getNumLock() == true){
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|
|
||||||
#define GALE_FLAG_KEY_CAPS_LOCK 0x00000001
|
#define GALE_FLAG_KEY_CAPS_LOCK 0x00000001
|
||||||
#define GALE_FLAG_KEY_SHIFT 0x00000030
|
#define GALE_FLAG_KEY_SHIFT 0x00000030
|
||||||
#define GALE_FLAG_KEY_SHIFT_LEFT 0x80000010
|
#define GALE_FLAG_KEY_SHIFT_LEFT 0x00000010
|
||||||
#define GALE_FLAG_KEY_SHIFT_RIGHT 0x40000020
|
#define GALE_FLAG_KEY_SHIFT_RIGHT 0x00000020
|
||||||
#define GALE_FLAG_KEY_CTRL 0x00000300
|
#define GALE_FLAG_KEY_CTRL 0x00000300
|
||||||
#define GALE_FLAG_KEY_CTRL_LEFT 0x00000100
|
#define GALE_FLAG_KEY_CTRL_LEFT 0x00000100
|
||||||
#define GALE_FLAG_KEY_CTRL_RIGHT 0x00000200
|
#define GALE_FLAG_KEY_CTRL_RIGHT 0x00000200
|
||||||
@ -20,7 +20,6 @@
|
|||||||
#define GALE_FLAG_KEY_ALT 0x00030000
|
#define GALE_FLAG_KEY_ALT 0x00030000
|
||||||
#define GALE_FLAG_KEY_ALT_LEFT 0x00010000
|
#define GALE_FLAG_KEY_ALT_LEFT 0x00010000
|
||||||
#define GALE_FLAG_KEY_ALT_RIGHT 0x00020000
|
#define GALE_FLAG_KEY_ALT_RIGHT 0x00020000
|
||||||
#define GALE_FLAG_KEY_ALTGR 0x00020000
|
|
||||||
#define GALE_FLAG_KEY_NUM_LOCK 0x00000002
|
#define GALE_FLAG_KEY_NUM_LOCK 0x00000002
|
||||||
#define GALE_FLAG_KEY_INSERT 0x00000003
|
#define GALE_FLAG_KEY_INSERT 0x00000003
|
||||||
|
|
||||||
@ -88,9 +87,9 @@ bool gale::key::Special::get(enum gale::key::keyboard _move) {
|
|||||||
return getMetaLeft();
|
return getMetaLeft();
|
||||||
case keyboard::metaRight:
|
case keyboard::metaRight:
|
||||||
return getMetaRight();
|
return getMetaRight();
|
||||||
case keyboard::altRight:
|
|
||||||
return getAltLeft();
|
|
||||||
case keyboard::altLeft:
|
case keyboard::altLeft:
|
||||||
|
return getAltLeft();
|
||||||
|
case keyboard::altRight:
|
||||||
return getAltRight();
|
return getAltRight();
|
||||||
case keyboard::numLock:
|
case keyboard::numLock:
|
||||||
return getNumLock();
|
return getNumLock();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user