Peter Hutterer
676188531b
Unrealize cursor only once, not per device.
2007-04-04 17:35:06 +09:30
Eamon Walsh
14aea12cad
xace: forgot one of the hook call arguments. Add it.
2007-04-03 15:23:56 -04:00
Eamon Walsh
353e19fd5e
devPrivates rework: zero out newly allocated private space.
2007-04-03 14:06:02 -04:00
Peter Hutterer
207f710d16
Delete all grabs from all devices when deleting a window.
2007-04-03 19:02:14 +09:30
Peter Hutterer
5f382c9c7f
Merge branch 'master' into mpx
2007-04-03 15:07:18 +09:30
Peter Hutterer
f09ee168e2
Revert "o fix minor error in comment for GetPointerEvents()"
...
This reverts commit 96ce17aa94 .
2007-04-03 15:07:00 +09:30
Peter Hutterer
9b0b340668
Make GrabDevice differ between core grabs and device grabs.
2007-04-03 15:06:26 +09:30
Peter Hutterer
e8777a91f3
Merge branch 'master' into mpx
...
Conflicts:
Xi/closedev.c
Xi/exevents.c
Xi/extinit.c
Xi/listdev.c
dix/window.c
hw/xfree86/common/xf86Xinput.c
include/extinit.h
mi/mipointer.c
2007-04-02 15:36:26 +09:30
Peter Hutterer
96ce17aa94
o fix minor error in comment for GetPointerEvents()
2007-04-02 11:30:47 +09:30
Peter Hutterer
63d8f01819
dix: Fix wrong cursor refcount.
...
Calloc cursor struct to ensure devPrivates are zeroed out and don't
increase the refcnt for devices automatically when allocating a new
cursor. Use new DeviceIsPointerType() to detect if device is a pointer
_before_ device has been activated and can thus be identified and set
up grab functions accordingly. This way we can increase the refcnt
when we get a pointer grab.
2007-03-30 14:59:43 +09:30
Peter Hutterer
20e4314b17
dix: Try to get closer to the correct refcnt for cursors.
...
This commit introduces a memory leak, as the refcnt never seems to get
down to 0 and thus cursors will not be freed. Solves the problems with
GNOME segfaulting every 30 seconds though.
2007-03-29 19:12:32 +09:30
Peter Hutterer
0c607f4b19
dix: Pick keyboard instead of using virtual keyboard in Grab/UngrabKey.
2007-03-29 14:43:50 +09:30
Eamon Walsh
299ff4c829
xace: provide creation-time resource hook call in CreateWindow().
2007-03-28 12:57:11 -04:00
Eamon Walsh
0331c6a8fc
Merge branch 'master' into XACE-SELINUX
2007-03-26 10:28:05 -04:00
Eamon Walsh
f7c5aa0dc0
Remove dead NEED_DBE_BUF_BITS code.
2007-03-26 10:21:44 -04:00
Adam Jackson
4b5802ddbd
General DIX static and dead code cleanup.
2007-03-25 17:57:54 -04:00
Adam Jackson
9a0f25de7c
Static cleanups, dead code deletion.
2007-03-25 12:27:01 -04:00
Peter Hutterer
ac2356843e
dix: Increase allocation size for core keyboard keymap to avoid buffer overrun when copying keymap from extension devices.
2007-03-25 15:24:47 +09:30
Peter Hutterer
5f9c10e8da
Clean up DeviceIntPtr, prepare for Server 1.4 ABI. Move sprite-related
...
information into a new SpriteInfoRec, remove isMPDev flag.
2007-03-25 15:00:03 +09:30
Peter Hutterer
e54311395e
dix: Increase allocation size for core keyboard keymap to avoid buffer
...
overrun when copying keymap from extension devices.
2007-03-25 09:41:33 +09:30
Eamon Walsh
84a066cc88
xace: pass serverClient as default argument to dixChangeWindowProperty
...
instead of NullClient.
2007-03-23 10:33:53 -04:00
Eamon Walsh
e1cc68add0
xace: drop the name argument from the property callback.
2007-03-22 17:33:16 -04:00
Eamon Walsh
1b766ffc06
dix: reorganize property code to better support xace hook; requires new API for
...
changing a property, dixChangeWindowProperty, taking an additional client argument.
2007-03-22 15:55:35 -04:00
Eamon Walsh
1b58304ac8
xace: add new argument to property hook for property structure itself.
2007-03-22 14:07:01 -04:00
Eamon Walsh
5486be4898
dix: devPrivates support for PropertyRec.
2007-03-22 10:59:21 -04:00
Peter Hutterer
f8cd19bd16
Xi: add GetClientPointer and GetPointerPairing requests.
...
dix: use PickKeyboard for ProcSetInputFocus and ProcGetInputFocus instead
of the core keyboard.
2007-03-22 17:47:01 +10:30
Eamon Walsh
a3296d111d
xace: add access_mode argument to selection hook.
2007-03-21 17:01:26 -04:00
Eamon Walsh
4c1fb8069d
dix: add new selection fields supporting redirection.
...
This is a minor ABI break.
2007-03-21 16:18:09 -04:00
Eamon Walsh
9c144f8ac5
xace: add XACE_SELECTION_ACCESS hook for selection redirection/access.
2007-03-21 14:39:00 -04:00
Adam Jackson
021fc5cb2c
Static markup and dead code cull over xkb/.
...
The former <X11/extensions/XKBsrv.h> has been pulled into the server now as
include/xkbsrv.h, and the world updated to look for it in the new place,
since it made no sense to define server API in an extension header. Any
further work along this line will need to do similar things with XKBgeom.h
and friends.
2007-03-20 18:37:02 -04:00
Eamon Walsh
2945deba1d
xace: drop XACE_WINDOW_INIT hook, it has been superseded by ResourceStateCallback.
2007-03-19 17:09:10 -04:00
Peter Hutterer
0acf993e28
dix: Move sprite initalization/pairing from ActivateDevice to
...
EnableDevice.
zero out spriteTrace, otherwise GetCurrentRootWindow() may return
invalid data.
Evdev adds previously hotplugged devices on its own when rescanning,
and ActivateDevice does not get called for those devices. Sprites need
to be initialized or paired before the device gets started, so the
safest place to do so is EnableDevice (which actually does get called
by the evdev driver).
2007-03-19 16:11:01 +10:30
Peter Hutterer
015d728bcd
Merge branch 'master' into mpx
...
Conflicts:
dix/devices.c
dix/events.c
mi/misprite.c
2007-03-19 09:42:56 +10:30
Peter Hutterer
b167583fe2
o fix minor error in comment for GetPointerEvents()
2007-03-16 15:58:05 +10:30
Peter Hutterer
65b0eb60b0
Xi: move IsPointerDevice into dix.
...
dix: IsPointerDevice and IsKeyboardDevice, use same ways to identify type
of device as XI does for the XListInputDevices reply.
Autopair each non-pointer device with VCP when activating, pair with
real device after activation.
Don't return non-keyboard devices when calling GetPairedKeyboard or
PickKeyboard, otherwise we segfault for 'evdev brain'.
2007-03-16 15:52:24 +10:30
Peter Hutterer
456f429ad6
dix: fix: don't return when device is same as argument.
...
fix: set access default rule to 0 on init.
2007-03-15 21:48:19 +10:30
Peter Hutterer
c3eb248cf9
dix: fix: don't skip first item in list when seeking for a device cursor.
2007-03-14 13:21:33 +10:30
Peter Hutterer
ce9409aceb
dix: Get the state from the paired device and the real device to fill the
...
state field in the event, rather than using the virtual devices.
ProcessPointerEvent: name argument "device" instead of "other".
Add GetPairedKeyboard().
2007-03-13 19:16:56 +10:30
Peter Hutterer
577464af43
dix: restore commit b3b2a6a0d4 that for some
...
reason got wiped.
fix ProcGrabKeyboard to use PickKeyboard
fix PickKeyboard to actually work.
2007-03-09 17:13:05 +10:30
Peter Hutterer
07806f4081
Xi: Add SetClientPointer request handling.
2007-03-09 15:45:25 +10:30
Eamon Walsh
fe05ba75a1
devPrivates rework: pass address of pointer to private callbacks instead of
...
the pointer itself.
2007-03-08 12:14:30 -05:00
Eamon Walsh
b9cff1670f
Add ResourceStateCallback similar in function to ClientStateCallback.
2007-03-08 12:13:52 -05:00
Eamon Walsh
2fcb45eb5d
devPrivates rework: redo field offset registration, drop RC_PRIVATES class.
2007-03-08 12:13:36 -05:00
Eamon Walsh
947f8d249b
devPrivates rework: redo interface again, dropping parent and type parameters
...
as well as preallocation routine.
2007-03-08 12:13:18 -05:00
Eamon Walsh
c45f676208
devPrivates rework: hook up new mechanism in backwards-compatibility mode
...
on existing structures that support devPrivates.
2007-03-08 12:12:51 -05:00
Peter Hutterer
b3b2a6a0d4
dix: Check if client has a grab on any other device before mouse/kbd
...
event is delivered to the client. Client's don't cope well with
receiving core events from other devices when having a grab on a
pointer or keyboard.
2007-03-08 22:16:17 +10:30
Peter Hutterer
63169ce52d
dix: remove 'register' keyword for all variables.
2007-03-08 17:50:25 +10:30
Peter Hutterer
ceca5670fe
dix: Each device needs to differ between a core grab and an XI grab,
...
otherwise a Xi grab may overwrite or release a core grab.
Replace grab and associates with coreGrab and deviceGrab structures,
adjust rest of dix/Xi/etc to compile.
xfree86: Don't check for core devices, we'll have the virtual ones anyway.
If we check, the first mouse device is duplicated and sends
double events.
2007-03-08 17:17:23 +10:30
Eamon Walsh
b5fde366e2
Properly free device devPrivates - memory leak fix.
2007-03-07 12:29:55 -05:00
Eamon Walsh
aaef4d6a41
devPrivates rework: move reset functions into a single call.
2007-03-07 09:57:02 -05:00