summaryrefslogtreecommitdiff
path: root/development/xemacs/patches/mod-shift.patch
diff options
context:
space:
mode:
Diffstat (limited to 'development/xemacs/patches/mod-shift.patch')
-rw-r--r--development/xemacs/patches/mod-shift.patch30
1 files changed, 30 insertions, 0 deletions
diff --git a/development/xemacs/patches/mod-shift.patch b/development/xemacs/patches/mod-shift.patch
new file mode 100644
index 0000000000..9ca292a7ef
--- /dev/null
+++ b/development/xemacs/patches/mod-shift.patch
@@ -0,0 +1,30 @@
+--- xemacs-21.4.15/src/event-Xt.c.orig 2004-07-09 11:02:02.000000000 -0400
++++ xemacs-21.4.15/src/event-Xt.c 2004-07-09 11:02:23.000000000 -0400
+@@ -1253,7 +1253,26 @@
+ KeySym bot = XLookupKeysym (ev, Mode_switch_p ? 2 : 0);
+ KeySym top = XLookupKeysym (ev, Mode_switch_p ? 3 : 1);
+ if (top && bot && top != bot)
+- modifiers &= ~XEMACS_MOD_SHIFT;
++ // SAM
++ switch(top) {
++ case 0x1008fe01:
++ case 0x1008fe02:
++ case 0x1008fe03:
++ case 0x1008fe04:
++ case 0x1008fe05:
++ case 0x1008fe06:
++ case 0x1008fe07:
++ case 0x1008fe08:
++ case 0x1008fe09:
++ case 0x1008fe0a:
++ case 0x1008fe0b:
++ case 0x1008fe0c:
++ break;
++ default:
++ modifiers &= ~XEMACS_MOD_SHIFT;
++ break;
++ }
++ //SAM
+ }
+ emacs_event->event_type = key_press_event;
+ emacs_event->timestamp = ev->time;