mirror of
https://github.com/X11Libre/xserver.git
synced 2026-10-04 22:36:10 +00:00
Bugzilla #2800 <https://bugs.freedesktop.org/show_bug.cgi?id=2800> Xevie
extension crash with signal 11 on keyboard Bugzilla #1205 <https://bugs.freedesktop.org/show_bug.cgi?id=1205> Xevie client receives two KeyPress events on consumed keys when XKB is enabled Patch #2223 <https://bugs.freedesktop.org/attachment.cgi?id=2223> Fixes for both of these and some other Xevie bugs (Derek Wang - Sun Microsystems)
This commit is contained in:
parent
a8a61bbe22
commit
62343f5162
7 changed files with 607 additions and 38 deletions
|
|
@ -48,6 +48,7 @@ SOFTWARE.
|
|||
|
||||
|
||||
/* $Xorg: devices.c,v 1.4 2001/02/09 02:04:39 xorgcvs Exp $ */
|
||||
/* $XdotOrg: $ */
|
||||
|
||||
#include <X11/X.h>
|
||||
#include "misc.h"
|
||||
|
|
@ -120,6 +121,8 @@ _AddInputDevice(DeviceProc deviceProc, Bool autoStart)
|
|||
#ifdef XKB
|
||||
dev->xkb_interest= NULL;
|
||||
#endif
|
||||
dev->nPrivates = 0;
|
||||
dev->devPrivates = dev->unwrapProc = NULL;
|
||||
inputInfo.off_devices = dev;
|
||||
return dev;
|
||||
}
|
||||
|
|
@ -352,13 +355,10 @@ _RegisterPointerDevice(DeviceIntPtr device)
|
|||
{
|
||||
inputInfo.pointer = device;
|
||||
#ifdef XKB
|
||||
if (noXkbExtension) {
|
||||
device->public.processInputProc = CoreProcessPointerEvent;
|
||||
device->public.realInputProc = CoreProcessPointerEvent;
|
||||
} else {
|
||||
device->public.processInputProc = ProcessPointerEvent;
|
||||
device->public.realInputProc = ProcessPointerEvent;
|
||||
}
|
||||
device->public.processInputProc = CoreProcessPointerEvent;
|
||||
device->public.realInputProc = CoreProcessPointerEvent;
|
||||
if (!noXkbExtension)
|
||||
XkbSetExtension(device,ProcessPointerEvent);
|
||||
#else
|
||||
device->public.processInputProc = ProcessPointerEvent;
|
||||
device->public.realInputProc = ProcessPointerEvent;
|
||||
|
|
@ -378,13 +378,10 @@ _RegisterKeyboardDevice(DeviceIntPtr device)
|
|||
{
|
||||
inputInfo.keyboard = device;
|
||||
#ifdef XKB
|
||||
if (noXkbExtension) {
|
||||
device->public.processInputProc = CoreProcessKeyboardEvent;
|
||||
device->public.realInputProc = CoreProcessKeyboardEvent;
|
||||
} else {
|
||||
device->public.processInputProc = ProcessKeyboardEvent;
|
||||
device->public.realInputProc = ProcessKeyboardEvent;
|
||||
}
|
||||
device->public.processInputProc = CoreProcessKeyboardEvent;
|
||||
device->public.realInputProc = CoreProcessKeyboardEvent;
|
||||
if (!noXkbExtension)
|
||||
XkbSetExtension(device,ProcessKeyboardEvent);
|
||||
#else
|
||||
device->public.processInputProc = ProcessKeyboardEvent;
|
||||
device->public.realInputProc = ProcessKeyboardEvent;
|
||||
|
|
|
|||
Loading…
Reference in a new issue