mirror of
https://github.com/debauchee/barrier.git
synced 2026-05-21 06:45:22 -06:00
Merge b43a831cd7 into 653e4badeb
This commit is contained in:
commit
a05acdc986
1 changed files with 13 additions and 2 deletions
|
|
@ -1357,9 +1357,20 @@ MSWindowsKeyState::getIDForKey(barrier::KeyMap::KeyItem& item,
|
||||||
KeyID id = static_cast<KeyID>(unicode[0]);
|
KeyID id = static_cast<KeyID>(unicode[0]);
|
||||||
|
|
||||||
switch (n) {
|
switch (n) {
|
||||||
case -1:
|
case -1: {
|
||||||
return barrier::KeyMap::getDeadKey(id);
|
// dead key. add an space to the keyboard so we exit
|
||||||
|
// the dead key mode and future calls to this function
|
||||||
|
// with different modifiers are not affected.
|
||||||
|
|
||||||
|
BYTE emptyState[256] = { };
|
||||||
|
n = m_ToUnicodeEx(VK_SPACE, 0, emptyState, unicode,
|
||||||
|
sizeof(unicode) / sizeof(unicode[0]), 0, hkl);
|
||||||
|
|
||||||
|
// as an alternative, we could use the returned
|
||||||
|
// buffer in unicode to look at the dead key character
|
||||||
|
// and not rely on getDeadKey to provide the mapping.
|
||||||
|
return barrier::KeyMap::getDeadKey(id);
|
||||||
|
}
|
||||||
default:
|
default:
|
||||||
case 0:
|
case 0:
|
||||||
// unmapped
|
// unmapped
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue