I can not comment, so this is the answer to
You need to fix kmap2qmap (add AltGr_Lock support), qkbd_qws.cpp (change testmods to match AltGr_Lock state).
This simple patch for qkbd_qws.cpp allows you to switch between languages ββusing the CapsLock button.
523,526c523,524 < //if (d->m_locks[0] /*CapsLock*/ && (m->flags & QWSKeyboard::IsLetter)) < // testmods ^= QWSKeyboard::ModShift; < if (d->m_locks[0] /*CapsLock*/) < testmods ^= QWSKeyboard::ModAltGr; --- > if (d->m_locks[0] /*CapsLock*/ && (m->flags & QWSKeyboard::IsLetter)) > testmods ^= QWSKeyboard::ModShift;
user3265758
source share