aboutsummaryrefslogtreecommitdiff
path: root/xorg-server/xkbdata.src/compat
diff options
context:
space:
mode:
Diffstat (limited to 'xorg-server/xkbdata.src/compat')
-rw-r--r--xorg-server/xkbdata.src/compat/level512
-rw-r--r--xorg-server/xkbdata.src/compat/misc10
2 files changed, 22 insertions, 0 deletions
diff --git a/xorg-server/xkbdata.src/compat/level5 b/xorg-server/xkbdata.src/compat/level5
index 6c2da991c..47693549f 100644
--- a/xorg-server/xkbdata.src/compat/level5
+++ b/xorg-server/xkbdata.src/compat/level5
@@ -42,3 +42,15 @@ default partial xkb_compatibility "default" {
action= LockMods(modifiers=LevelFive);
};
};
+partial xkb_compatibility "level5_lock" {
+ // This defines a Level5-Lock using the NumLock real modifier in order to
+ // create arbitrary level-behaviour, which would not be possible with the
+ // virtual modifier.
+ // See also: types/level5 : EIGHT_LEVEL_LEVEL_FIVE_LOCK
+ // See also: symbols/level5(lock)
+ virtual_modifiers NumLock;
+
+ interpret ISO_Level5_Lock {
+ action = LockMods(modifiers = NumLock);
+ };
+};
diff --git a/xorg-server/xkbdata.src/compat/misc b/xorg-server/xkbdata.src/compat/misc
index 9566bc6f6..68cda9594 100644
--- a/xorg-server/xkbdata.src/compat/misc
+++ b/xorg-server/xkbdata.src/compat/misc
@@ -115,3 +115,13 @@ default partial xkb_compatibility "misc" {
include "ledscroll"
};
+
+partial xkb_compatibility "assign_shift_left_action" {
+ // Because of the irrevertable modifier mapping in symbols/pc <LFSH> is
+ // getting bound to the Lock modifier when using
+ // symbols/shift(both_capslock), creating unwanted behaviour.
+ // This is a quirk, to circumvent the problem.
+ interpret Shift_L {
+ action = SetMods(modifiers = Shift);
+ };
+};