diff options
author | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2017-03-19 22:24:59 +0100 |
---|---|---|
committer | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2017-03-19 22:24:59 +0100 |
commit | b7c389b9a0fa366a40ab272a9429a52ecee7365d (patch) | |
tree | 065ae9f127d6091ea37424f560dc8cbf47d59cc4 /nx-X11/programs/Xserver/hw/nxagent/Keystroke.c | |
parent | 7fd5d934c1e73642e9919aa8dd5124466356fb89 (diff) | |
parent | 7065e0bf25484fe9cf008c934b69eff90600d3d8 (diff) | |
download | nx-libs-b7c389b9a0fa366a40ab272a9429a52ecee7365d.tar.gz nx-libs-b7c389b9a0fa366a40ab272a9429a52ecee7365d.tar.bz2 nx-libs-b7c389b9a0fa366a40ab272a9429a52ecee7365d.zip |
Merge branch 'uli42-pr/ignore_caps' into 3.6.x
Attributes GH PR #398: https://github.com/ArcticaProject/nx-libs/pull/398
Diffstat (limited to 'nx-X11/programs/Xserver/hw/nxagent/Keystroke.c')
-rw-r--r-- | nx-X11/programs/Xserver/hw/nxagent/Keystroke.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/nx-X11/programs/Xserver/hw/nxagent/Keystroke.c b/nx-X11/programs/Xserver/hw/nxagent/Keystroke.c index d12b459fc..69b07dfe5 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Keystroke.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Keystroke.c @@ -34,6 +34,7 @@ #include "Events.h" #include "Options.h" #include "Keystroke.h" +#include "Keyboard.h" #include "Drawable.h" #include "Init.h" /* extern int nxagentX2go */ @@ -149,6 +150,15 @@ static Bool modifier_matches(unsigned int mask, int compare_alt_meta, unsigned i state &= ~nxagentAltMetaMask; } + /* ignore CapsLock and/or Numlock if the keystroke does not + explicitly require them */ + + if ( !(mask & nxagentCapsMask) ) + state &= ~nxagentCapsMask; + + if ( !(mask & nxagentNumlockMask) ) + state &= ~nxagentNumlockMask; + /* all modifiers except meta/alt have to match exactly, extra bits are evil */ if (mask != state) { ret = False; |