diff options
Diffstat (limited to 'x11-servers/xorg-server/files/patch-xf86Events.c')
-rw-r--r-- | x11-servers/xorg-server/files/patch-xf86Events.c | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/x11-servers/xorg-server/files/patch-xf86Events.c b/x11-servers/xorg-server/files/patch-xf86Events.c new file mode 100644 index 000000000..bdd5bc51c --- /dev/null +++ b/x11-servers/xorg-server/files/patch-xf86Events.c @@ -0,0 +1,76 @@ +--- programs/Xserver/hw/xfree86/common/xf86Events.c.orig Sun Sep 26 04:17:42 2004 ++++ programs/Xserver/hw/xfree86/common/xf86Events.c Sun Sep 26 04:17:25 2004 +@@ -448,7 +448,7 @@ + #if defined(SYSCONS_SUPPORT) || defined(PCVT_SUPPORT) || defined(WSCONS_SUPPORT) + static Bool first_time = TRUE; + #endif +-#if defined(__sparc__) && defined(__linux__) ++#if defined(__sparc__) && (defined(__linux__) || defined(__FreeBSD__)) + static int kbdSun = -1; + #endif + /* Disable any keyboard processing while in suspend */ +@@ -464,7 +464,7 @@ + } + #endif + +-#if defined (__sparc__) && defined(__linux__) ++#if defined(__sparc__) && (defined(__linux__) || defined(__FreeBSD__)) + if (kbdSun == -1) { + if ((xf86Info.xkbmodel && !strcmp(xf86Info.xkbmodel, "sun")) + || (xf86Info.xkbrules && !strcmp(xf86Info.xkbrules, "sun"))) +@@ -474,7 +474,7 @@ + } + if (kbdSun) + goto special; +-#endif /* __sparc__ && __linux__ */ ++#endif /* __sparc__ && (__linux__ || __FreeBSD__) */ + + #ifdef __linux__ + if (xf86Info.kbdCustomKeycodes) { +@@ -525,6 +525,7 @@ + } else + #endif /* i386 && SVR4 */ + { ++ if (!xf86IsPc98()) { + switch (scanCode) { + case 0x59: scanCode = KEY_0x59; break; + case 0x5a: scanCode = KEY_0x5A; break; +@@ -555,6 +556,7 @@ + case 0x75: scanCode = KEY_0x75; break; + case 0x76: scanCode = KEY_0x76; break; + } ++ } /* end if (!xf86IsPc98()) */ + } + } + +@@ -636,10 +638,12 @@ + * they need to get the same key code as the base key on the same + * physical keyboard key. + */ ++ if (!xf86IsPc98()) { + if (scanCode == KEY_SysReqest) + scanCode = KEY_Print; + else if (scanCode == KEY_Break) + scanCode = KEY_Pause; ++ } + #endif + + /* +@@ -676,7 +680,7 @@ + } + } + #endif +-#if defined (__sparc__) && defined(__linux__) ++#if defined(__sparc__) && (defined(__linux__) || defined(__FreeBSD__)) + special: + if (kbdSun) { + switch (scanCode) { +@@ -710,7 +714,7 @@ + */ + scanCode--; + } +-#endif /* defined (__sparc__) && defined(__linux__) */ ++#endif /* __sparc__ && (__linux__ || __FreeBSD__) */ + + #ifdef XKB + if ((xf86Info.ddxSpecialKeys == SKWhenNeeded && |