Peter Hutterer
0b4db74922
Squish the flags into the upper bits of the mode field for EnterLeave events.
...
This way we have enough space for the detail field.
2007-05-17 18:00:07 +09:30
Peter Hutterer
333bab4b23
Clean up, correct some comments.
...
Send event type down with the RawEvents.
2007-05-17 17:59:02 +09:30
Peter Hutterer
bc334286b0
Init device axis with -1,-1 minimum values.
...
This is needed to be able to cross to screens located east/north of the
current active screen.
2007-05-17 10:36:46 +09:30
Soren Sandmann Pedersen
dde0ceac4e
Add new InitRegions() function called from dix/main
2007-05-15 11:13:15 -04:00
Peter Hutterer
a8c56372ba
Revert "Allow events to grabWindows event if the device is not grabbed."
...
This reverts commit 339b73e710
.
Allowing those events can lead to race conditions.
Conflicts:
dix/events.c
2007-05-15 10:24:22 +09:30
Peter Hutterer
81fc6a128b
Add ungrab support to ExtendedGrabDeviceRequest handling.
...
Polish the code a bit.
2007-05-14 18:12:56 +09:30
Peter Hutterer
5c680e9493
Remove double-grab option. We only want one grab per device.
2007-05-14 12:34:53 +09:30
Peter Hutterer
4dc973f08c
Add ExtendedGrabDevice handling.
...
Add XGE handling in DeliverGrabbedEvent.
We can now grab something selecting XGE events, but the current code is a
bit messy and doesn't work too well yet.
2007-05-14 10:42:03 +09:30
Peter Hutterer
58c0fd2927
Adjust EQ to support long events.
...
Add RawDeviceEvent (pointers only for now).
This commit changes the event queue to use EventLists instead of xEvent
arrays. Only EQ is affected, event delivery still uses xEvent* (look for
comment in mieqProcessInputEvent).
RawDeviceEvents deliver driver information to the client, without clipping or
acceleration.
2007-05-02 13:50:09 +09:30
Peter Hutterer
0214d0b96a
Start devices after windows are initialized.
...
This fixes the hotplug segfault introduced with the multihead changes and
cleans up the code a bit as well.
2007-05-01 15:49:41 +09:30
Peter Hutterer
11d0e2109b
Correct enterleave semaphore value for root window.
2007-05-01 14:16:36 +09:30
Peter Hutterer
325380adb2
Check and re-set paired devices when initializing sprites.
...
If we don't do this, a device that is paired before a sprite has been
initialized for the paired device will not actually get the right sprite and
segfault the server on focus events. Happens for the VCK.
2007-05-01 11:02:05 +09:30
Peter Hutterer
b043a18450
Check VCP's and VCK's ids when searching for a new device id.
...
Both VCP and VCK are not in the inputInfo.devices list anymore, so we need to
check them separately. If we don't do this, we end up re-using ids 0 and 1,
causing all sorts of grief for clients.
2007-05-01 09:54:33 +09:30
Peter Hutterer
5e43910929
Add GenericEvent extension to Xext.
...
This adds (unconditional) support for the GE extension. Anything from now on
that sends events in MPX will have to use the GE extension. No GE, no MPX
events. GE is not actually used yet from anywhere with this commit.
You will need to update x11proto, xextproto, libX11, libXext and xcb to the
matching xge branches. Things will _NOT_ work without the updated protocol
headers and libraries.
2007-04-30 12:57:42 +09:30
Peter Hutterer
f28eea0647
Merge branch 'master' into mpx
...
Conflicts:
dix/devices.c
dix/events.c
2007-04-27 16:34:36 +09:30
Peter Hutterer
339b73e710
Allow events to grabWindows event if the device is not grabbed.
...
This kinda makes popup windows useable if the WM doesn't set the
ClientPointer. Kinda.
2007-04-27 13:24:27 +09:30
Paulo Ricardo Zanoni
82f97e1c0c
Enable event delivery for multiple heads.
...
Requires moving the spriteTrace into the DeviceIntRec and adjusting a few
functions to take in device argument, most notably XYToWindow().
Cursor rendering on the second screen is busted.
2007-04-26 15:58:50 +09:30
Peter Hutterer
09436fb7c3
Disable devices before removing, remove unrecoverable devices.
2007-04-24 23:11:44 +09:30
Peter Hutterer
c7e2ba0c9b
Use DevicePresence events to tell the client about enabled/disabled devices.
...
Include the device id in the event sent to the client.
2007-04-24 23:11:44 +09:30
Brian
ce099a9b78
fix bug in which maxKeysPerModifier wasn't getting set
2007-04-23 12:34:01 -06:00
Peter Hutterer
d61ed6c8a2
Check for NULL devices in CloseDevice().
2007-04-19 18:08:55 +09:30
Eamon Walsh
9cee4ec5e6
xace: change the semantics of the return value of XACE hooks to allow
...
arbitrary X status codes instead of just TRUE/FALSE.
The dix layer in most cases still does not propagate the return value of
XACE hooks back to the client, however. There is more error propagation
work to do.
2007-04-17 16:01:56 -04:00
Eamon Walsh
1f06d32ef5
Merge branch 'master' into XACE-SELINUX
...
Conflicts:
dix/privates.c
2007-04-17 12:10:22 -04:00
Peter Hutterer
b6aec7f6f9
Change FocusIn/Out semantics to match Enter/Leave semantics.
2007-04-17 16:51:16 +09:30
Peter Hutterer
451d5464b4
Change enter/leave semantics for events with detail Notify{Nonlinear}Virtual.
...
Core enter/leave events with detail Notify{Ancestor|Inferior|Nonlinear} are
only sent for the first/last pointer to enter/leave. Events with detail
Notify{Nonlinear}Virtual are sent at all times, but not to those windows that
currently have one or more pointers inside their boundaries.
2007-04-17 11:17:04 +09:30
Peter Hutterer
ea27b09d3a
Deliver FocusIn/FocusOut events for all devices.
...
Don't use VCK in SetInputFocus and DeliverFocusedEvent.
2007-04-13 17:15:22 +09:30
Peter Hutterer
7ccebc50b9
Documentation for events.c.
2007-04-13 13:08:44 +09:30
Peter Hutterer
2bb3c81fc1
Use paired kbd instead of VCK for EnterLeaveEvents, sanitize variable naming.
2007-04-12 16:35:43 +09:30
Peter Hutterer
e7b47b1758
Change core enter/leave semantics for multiple pointers.
...
Send EnterNotify when first device enters the window, LeaveNotify when the
last device leaves the window. Additional devices will not cause additional
Enter/LeaveNotifies.
2007-04-12 16:24:42 +09:30
Peter Hutterer
d4dad6f84f
Merge branch 'master' into mpx
...
Conflicts:
configure.ac
dix/events.c
hw/xfree86/common/xf86Xinput.c
2007-04-12 11:11:03 +09:30
Magnus Vigerlöf
4f05f9591e
Input: Always add devices with first available ID
...
Scan the device list when adding a new device, and make sure we can use
the first available ID, instead of always incrementing.
2007-04-10 23:58:20 +03:00
Magnus Vigerlöf
07c56abf84
Input: Plug memory leak in device free
...
Remember to also free the motion history, if we're using the DIX-managed
history.
2007-04-10 23:58:20 +03:00
Daniel Stone
e92743bc98
getevents: Copy modifier state from extended to core devices
...
Make core events carry the same modifier state as the extended events, so
that holding down Ctrl on keyboard A and pressing Q on keyboard B won't
cause your app to quit.
2007-04-10 23:58:20 +03:00
Stefan Huehner
1f6741db19
Bug #10560 : Code-Cleanup: function declarations () -> (void)
...
X.Org Bugzilla #10560 : <https://bugs.freedesktop.org/show_bug.cgi?id=10560 >
Patch #9511 <https://bugs.freedesktop.org/attachment.cgi?id=9511 >
2007-04-09 14:33:15 -07:00
Peter Hutterer
f1f8b562aa
Alloc sprite memory in devices' devPrivates, allow undisplaying cursors.
...
Improve memory usage by allocating the sprite's memory only to devices that
actually have a sprite and provide means to remove a device's cursor from the
screen (more hotplugging, yay!).
This commit breaks ScreenRec's ABI.
2007-04-09 19:31:59 +09:30
Peter Hutterer
7cef789fa1
Close down virtual core devices when closing all devices.
2007-04-09 18:37:48 +09:30
Peter Hutterer
6081b8c76f
Don't explicitly init sprite for VCP, EnableDevice() will take care of that.
2007-04-09 18:35:47 +09:30
Peter Hutterer
00b1d52f41
Adding some comments to devices.c.
2007-04-09 18:32:00 +09:30
Peter Hutterer
aa77ffb510
Fix: pick new ClientPointer when device is closed.
2007-04-09 18:29:00 +09:30
Eamon Walsh
1d550bb2c5
devPrivates rework: minor fix; use calloc and avoid initialization.
2007-04-05 12:12:58 -04:00
Eamon Walsh
ed75b05651
dix: add new, combined resource lookup function. Move all dix lookup API
...
deprecated so far to a new file dix/deprecated.c. Remove the deprecation
warnings for the time being.
2007-04-04 16:00:15 -04:00
Eamon Walsh
63e46e4fc3
devPrivates rework: properly free devPrivates on compatibility structures,
...
excluding pixmap.
2007-04-04 15:59:51 -04:00
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
Eamon Walsh
bb111291d8
Merge branch 'master' into XACE-SELINUX
2007-03-07 09:03:46 -05:00
Peter Hutterer
537bc2ead4
Xi: Don't deactivate core grabs from non-core button/key releases.
...
dix: set coreGrab flag for grabs caused by GrabPointer and button presses.
remove virtual core devices from device list, only real devices are in
the list now.
Auto-pair each keyboard with a real pointer if one is available,
provides multiple keyboards automatically after startup if devices
are configured.
fix GuessFreePointerDevice() to do what it's supposed to do.
mi: fix: call miPointerMove from miPointerWarpCursor.
fix: remove unused id field from miCursorInfoRec
don't update sprite for virtual core pointer.
2007-03-07 18:19:20 +10:30
Eamon Walsh
81526232bc
remove PIXPRIV check as this flag is always set.
2007-03-06 17:19:11 -05:00
Eamon Walsh
a7cd53deb9
remove PIXPRIV checks as this flag is always set.
2007-03-06 17:05:03 -05:00
Eamon Walsh
74175e0af7
devPrivates rework: remove some debugging code from dixFreePrivates.
2007-03-05 12:34:37 -05:00
Eamon Walsh
23fc429aad
Merge branch 'master' into XACE-SELINUX
2007-03-05 12:18:54 -05:00
Eamon Walsh
e684824709
devPrivates rework: redo interface and implementation.
2007-03-05 11:50:45 -05:00
Peter Hutterer
39aa791771
dix: Add GuessFreePointerDevice(). Runs through device list and tries to
...
find a pointer that hasn't been paired yet.
xfree86: Use GuessFreePointerDevice() for newly connected non-sprite devices.
2007-03-05 15:31:16 +10:30
Peter Hutterer
1f0075786f
Merge branch 'master' into mpx
...
Conflicts:
configure.ac
dix/getevents.c
hw/xfree86/ramdac/xf86Cursor.c
mi/mipointer.c
xkb/xkbUtils.c
2007-03-05 12:37:17 +10:30
Peter Hutterer
12175b668a
o fix minor error in comment for GetPointerEvents()
2007-03-03 13:57:39 +10:30
Peter Hutterer
57aa5e908d
dix, Xext, Xtrap, Xi: replace inputInfo.pointer with PickPointer where
...
possible. More replacements to come.
2007-03-02 17:14:37 +10:30
Peter Hutterer
e43b8a4e40
dix: Add ClientPointer to client, used for picking which pointer to use in
...
ambiguious request. PickPointer and PickKeyboard are used for getting
the appropriate pointer when situation is unclear.
Fix some issues with InitializeSprite.
dix, xfree86: Remove last traces of InitSprite.
2007-03-02 15:21:46 +10:30
Eamon Walsh
74f1de1de9
devPrivates rework: unhook resource system; will try a different approach.
2007-03-01 12:17:29 -05:00
Peter Hutterer
43bd35fcf8
dix: Remove InitSprite, work can be done by InitializeSprite.
...
Free sprite struct if a spriteOwner is paired.
xfree86: Use PairDevices instead of passing booleans around when creating a
sprite.
Xext: Switch back to using LookupPointer/KeyboardDevice instead of
inputInfo.xyz.
2007-03-01 17:19:37 +10:30
Eamon Walsh
81372f9096
devPrivates rework: hook up new interface in resource system; add new
...
resource-adding function that takes an additional ScreenPtr argument.
2007-02-23 13:23:12 -05:00
Eamon Walsh
16f2b8892d
devPrivates rework: add new interface implementation.
2007-02-23 13:22:46 -05:00
Peter Hutterer
4b8b0e377a
Xi: Add access control request handling.
...
dix: New file access.c to handle all access control for devices.
2007-02-22 20:00:59 +10:30
Eamon Walsh
9a3eb0357e
devPrivates rework: add RC_PRIVATES class, make ResourceRec visible in
...
the API, and add extra fields and structure supporting private storage.
2007-02-21 07:46:44 -05:00
Peter Hutterer
cd0af7a785
Xi, dix: Only one client at a time can change the pointer-keyboard pairing,
...
using xRegisterPairingClient request.
2007-02-21 10:08:41 +10:30
Ben Byer
81444486be
autoconf goodness for XDarwin, courtesy of pogma
2007-02-17 02:23:11 -08:00
Ben Byer
cf4994b0db
dix mods for Darwin
2007-02-17 01:21:43 -08:00
Peter Hutterer
f6c3b9fa97
xfree86: mouse and keyboard hotplugging support. New mouse devices will get
...
new cursors, keyboard devices use VCP's focus until paired.
2007-02-15 13:51:20 +10:30
Peter Hutterer
d570ff7c81
fix: WarpCursor needs to send MotionNotify.
2007-02-15 10:28:55 +10:30
Peter Hutterer
25104ed2e6
dix: fix typo in condition.
2007-02-14 11:26:53 +10:30
Peter Hutterer
33ef546b94
dix: Clean up GetPointerEvents. If pDev == inputInfo.pointer, assume that
...
we do not want Xi events.
mi: Remove POINTER_CORE_ONLY flag.
2007-02-14 11:18:43 +10:30
Peter Hutterer
7cd73b00a2
dix: If POINTER_CORE_ONLY is set, GetPointerEvents() only creates a core event
...
mi: fix: Create motion event in miPointerMoved
2007-02-05 14:48:48 +10:30
Peter Hutterer
4aaaa70d1b
Xi: Adding ChangePointerKeyboardPairing request
...
Adding PointerKeyboardPairingChanged event
Correct error values for XWarpDevicePointer
dix: Adding device argument to SendMappingNotify
Adding spriteOwner flag to devices
2007-01-29 18:23:24 +10:30
Peter Hutterer
15a81b6325
Merge branch 'master'
2007-01-28 17:18:57 +10:30
Peter Hutterer
cc3d66d4a5
o fix minor error in comment for GetPointerEvents()
2007-01-28 17:08:17 +10:30
Peter Hutterer
3759254c09
Merge branch 'master'
2007-01-28 17:05:55 +10:30
Peter Hutterer
ba547d4f6a
mi: Quick fix to stop segfault on non-core keyboards.
2007-01-12 14:42:02 +10:30
Peter Hutterer
5e2f8dee63
mi: remove core pointer special handling. No event has core pointer as
...
device now.
dix: zero pSprite memory, stop segfaults on server restart.
2007-01-11 14:05:39 +10:30
Peter Hutterer
ea82333dc1
Xi: add missing call for SProcXChangeDeviceCursor
...
add DeviceEnterNotify and DeviceLeaveNotify
fix: QueryDevicePointer crashed if called with keyboard device
2007-01-10 14:52:13 +10:30
Michel Dänzer
282a4dcaab
Attempt to fix drawable type checks in dixLookupDrawable().
...
Not sure this is 100% correct either, but it fixes at least one reproducible
crasher where it returned a pixmap to dixLookupWindow().
2007-01-08 19:22:41 +01:00
Peter Hutterer
95e1a88050
Xi: Adding ChangeDeviceCursor request
2007-01-08 12:31:18 +10:30
Peter Hutterer
05f915050c
dix/events: take screen number, not pointer, in PostSyntheticMotion
...
Since we were using PostSyntheticMotion incorrectly anyway, update the
declared API to match.
2006-12-27 16:38:06 +00:00
Eamon Walsh
d9e079d2a3
Zero out client devPrivates on allocation.
2006-12-22 13:07:09 -05:00
Peter Hutterer
202b46eb6b
xfree86: Changing "IsMPDevice" to "SharedPointer" option. Devices will default
...
to MP devices.
Xi: Adding QueryDevicePointer request/reply
Adding WarpDevicePointer request/reply
2006-12-20 13:05:53 +10:30
Peter Hutterer
ca5ebe3971
Merge branch 'master' of git://anongit.freedesktop.org/git/xorg/xserver
2006-12-19 10:51:01 +10:30
Peter Hutterer
2d0a63126b
Merge branch 'master' of git://anongit.freedesktop.org/git/xorg/xserver
2006-12-19 10:31:40 +10:30
Peter Hutterer
03c554283e
mi: removing MPX ifdefs
...
global sprite renaming in mipointer and misprite
fixed: multiple remove cursor call in miSpriteInstallColormap
fixed: wrong core pointer usage in miSpriteStoreColors
dix: bugfix in CheckCursorConfinement
removing MPX ifdefs
removing MPX event generation (using Xi solely now)
bugfix GrabDevice: uninitialized field in grab struct caused segfault
xfree86: removing MPX fdefs
Xi: removing MPX protocol events
2006-12-18 15:33:54 +10:30
Eamon Walsh
0128073568
Add loud warnings to deprecated lookup functions.
...
Hopefully this will alert external driver maintainers.
2006-12-15 18:27:16 -05:00
Eamon Walsh
ab1d5b0c31
Convert callers of LookupClient() to dixLookupClient().
2006-12-15 17:26:58 -05:00
Eamon Walsh
25d5e0a629
Convert callers of SecurityLookupWindow() to dixLookupWindow().
2006-12-15 15:50:46 -05:00
Eamon Walsh
00f0705b3b
Remove instances of macros SECURITY_VERIFY_GEOMETRABLE and SECURITY_VERIFY_GC.
2006-12-14 19:15:21 -05:00
Eamon Walsh
5e334f06a1
Remove instances of macros VERIFY_GEOMETRABLE and VERIFY_GC.
2006-12-14 18:27:09 -05:00
Eamon Walsh
51b69ff499
Remove instances of macro SECURITY_VERIFY_DRAWABLE.
2006-12-14 17:53:43 -05:00
Eamon Walsh
ab1886df73
Add new, combined dix lookup functions (tweak).
2006-12-14 15:42:19 -05:00
Eamon Walsh
60cdc592fe
Add new, combined dix lookup functions.
2006-12-14 14:46:03 -05:00
Eamon Walsh
6c46645cfc
Naming change: Security*Access -> Dix*Access
2006-12-14 14:45:42 -05:00
Peter Hutterer
a96788058e
mi: removing MPX ifdefs
...
global sprite renaming in mipointer and misprite
fixed: multiple remove cursor call in miSpriteInstallColormap
fixed: wrong core pointer usage in miSpriteStoreColors
dix: bugfix in CheckCursorConfinement
removing MPX ifdefs
removing MPX event generation (using Xi solely now)
2006-12-14 10:50:18 +10:30
Peter Hutterer
ae3c24da34
dix: Moving SpriteRec into DeviceIntRec
...
removing global sprite structure
beginning to remove MPX ifdefs
xnest: Fix to make xnest compile again
2006-12-11 18:09:59 +10:30
Daniel Stone
0c5dab5c8e
config: move config.h to hotplug.h
...
Also, move configInitialise to after OsInit, since the next commit will
make it use a timer.
2006-12-06 23:24:24 +02:00
Daniel Stone
72e7f2ac6c
GetPointerEvents: always send valuator events for MotionNotify
...
Always chase a DeviceMotionNotify event with a DeviceValuator, which is
not required in the spec, but will silently break the lib if you don't
include.
2006-12-06 23:24:24 +02:00
Daniel Stone
c458a70d65
GetPointerEvents: fix typo
...
Fix typo that resulted in inverted axes when using an absolute positioning
device that didn't report y, and thus relied on the previous value.
2006-12-06 23:24:24 +02:00
Daniel Stone
2f0a800ffd
config: move to block/wakeup handler
2006-12-06 23:24:24 +02:00
Daniel Stone
f2903c12bb
SyntheticMotion: don't dereference sprite.screen when not using Xinerama
...
(cherry picked from aa052e43c6c293e14f78837e00c6b7581f9713bb commit)
2006-12-06 23:24:23 +02:00
Peter Hutterer
eb1d9f51af
Ironing some glitches caused by the merge
2006-12-05 18:50:19 +10:30
Peter Hutterer
3c8f166022
Merge branch 'master' of git://anongit.freedesktop.org/git/xorg/xserver into mpx
...
Conflicts:
dix/events.c
2006-12-05 18:28:33 +10:30
Eamon Walsh
ac90ce58ba
Naming change: Security*Operation -> Xace*Operation
2006-12-01 21:15:41 -05:00
Eamon Walsh
f44f14fe56
Define calls away when not building XACE, allowing ifdef's to be removed.
2006-12-01 21:15:41 -05:00
Peter Hutterer
416f1bb99a
mpx: SelectEvents and GetEventBase requests.
...
Some renaming and cleaning up in extinit.c
MPXLastEvent added
Xi: ShouldFreeInputMask() from XI is not static any more, used in mpx
dix: GetPointerEvents() allocates MPX event for MPX devices.
DeliverDeviceEvents() caters for MPX devices.
2006-12-01 15:56:52 +10:30
Alan Coopersmith
8956f63a94
Tell automake to STFU about the *.O files
...
automake will not stop whining about the *.O files not being in normal library
name format, so just tell automake they are PROGRAMS so it builds them without
bitching.
2006-11-30 19:53:29 -08:00
Peter Hutterer
bdf718907b
dix: missing parameter to SetCursorPosition in CheckMotion ifndef MPX
...
mi: missing include in misprite.c ifndef MPX
2006-11-28 18:06:34 +10:30
Peter Hutterer
e88bc0e55a
mi: Bugfix: FreeCursor ignores negative refcounts.
...
mieq: Bugfix: Motion notifies did overwrite DeviceMotionNotifies
2006-11-28 14:34:36 +10:30
Eric Anholt
b4b0d901d9
Merge branch 'randr-1.2'
...
Conflicts:
dix/events.c
dix/getevents.c
hw/xfree86/common/xf86Mode.c
hw/xfree86/dri/Makefile.am
hw/xfree86/os-support/drm/xf86drm.c
hw/xfree86/os-support/xf86drm.h
2006-11-27 15:43:15 -08:00
Peter Hutterer
85ea408e38
mi: malloc checks for misprite and midispcur, code cleanup
...
removed IsMPDev()
2006-11-27 18:07:16 +10:30
Peter Hutterer
1c7568b8a1
mi: closing memory leak, miPointer is freed in miPointerCloseScreen
...
bugfix: uninitialized pPointer in miPointerGetPosition ifndef MPX
adding DeviceIntPtr parameter to ScreenRec's cursor functions.
cleanup of miPointer code to use same scheme in each function
dix: MPHasCursor() function determines checking whether to invoke
cursor rendering.
animcur: adding DeviceIntPtr parameter to cursor functions but animcur relies
on the core pointer right now.
xfixes: adding DeviceIntPtr parameter to cursor functions but xfixes relies on
the core pointer right now.
rac: adding DeviceIntPtr parameter to cursor functions but RAC relies on
the core pointer right now.
ramdac: adding DeviceIntPtr parameter to cursor functions but ramdac relies on
the core pointer right now.
2006-11-23 17:15:14 +10:30
Peter Hutterer
f52d53e060
dix: DeliverEventsToWindow adjusted for MPX
...
mi: sprite debugging disabled
2006-11-22 17:58:57 +10:30
Peter Hutterer
8c16f21d5d
dix GetSpriteWindow() adjusted for MPX
...
added device dependency for MPX to DoEnterLeaveEvents,
EnterLeaveEvents, EnterNotifies, LeaveNotifies and
FixUpEventFromWindow.
2006-11-22 17:06:47 +10:30
Peter Hutterer
70383105de
mi: added DevToSprite() conversion function
...
fixed miSpriteRealize to use passed pDev argument instead of looping.
dix: changed sprite dependency and added MPX functionality to parts of
events.c (XineramaChangeToCursor, XineramaCheckPhysLimits,
XineramaConstrainCursor)
Xi: fix: accessing other->buttons for keyboard segfaulted the server
2006-11-22 15:27:16 +10:30
Alan Hourihane
33ff4cec5f
Issue CloseDownDevices() in os/log.c and remove from dix/main.c.
...
This ensures that all calls to FatalError() will shutdown the input devices.
2006-11-21 21:23:17 +00:00
Peter Hutterer
efd4f3c6ff
dix: WindowsRestructured() calls CheckMotion() on all devices
...
mi: core pointer was checked twice in miSpriteReportDamage,
miSpriteInstallColormap, miSpriteStoreColors, miSpriteSaveDoomedAreas
and miSpriteRealiseCursor
using damage bug (see comment in file) to avoid artefacts
2006-11-21 20:31:30 +10:30
Peter Hutterer
9db851c22d
dix: moved sprite from static to be pointer of type SpritePtr
...
added SpriteRecs for MPX devices
changed sprite dependency and added MPX functionality to parts
of events.c (ConfineToShape, PostNewCursor, XineramaCheckMotion,
CheckMotion, XineramaChangeToCursor, ChangeToCursor, CheckPhysLimits,
PointerConfinedToScreen)
added DeviceIntRec param to GetSpritePosition(). This required some
minor changes in ddx, xtest, xkb and xfixes.
mi: changed miPointer to pointer instead of static struct.
2006-11-21 18:15:04 +10:30
Peter Hutterer
447efdc01d
mi: constrain MPX cursors to screen
2006-11-21 14:46:00 +10:30
Peter Hutterer
b1bbdf464d
mi: added MPX to miSprite functions.
...
NOTE: This version will render multiple cursors but with an artefact each time
when devices alternate.
2006-11-20 17:58:30 +10:30
Alan Hourihane
c9a5f9d391
Shutdown input devices if FatalError occurs during startup.
...
Fixes Xdmx problems when the input device has been initialized
and the keyboard map has been destroyed.
2006-11-18 19:55:42 +00:00
Peter Hutterer
90bea69dfd
mi:
...
added miCursorInfoRec to contain info of the MPX cursors.
calling miUpdatePointerSprite() from event queue for MPX devices.
adding device-specific processing to miPointer*() functions.
dix: Call to SetCursorPosition in CheckMotion() temporarily disabled.
xfree86/common: call to miPointerUpdateSprite() disabled, is done from the EQ
NOTE: This build will not display cursor images.
BUG: The second mouse does to take correct x coordinates.
2006-11-17 18:03:43 +10:30
Peter Hutterer
c957a16180
dix: added isMPdev field to _DeviceIntRec, is used in GetPointerEvents()
...
mieq: avoid merging events from different devices in mieqEnqueue()
xfree86/common
isMPdev field used from xf86ActivateDevice(), xf86PostMotionEvent()
and xf86PostButtonEvent()
2006-11-16 15:11:14 +10:30
Peter Hutterer
7ce2dc5784
dix:
...
merge with code cleanup from master
GetPointerEvents treats events in the same way as XINPUT devices when flag
has POINTER_MULTIPOINTER set.
xfree86/common:
added XI86_MP_DEVICE flag and parsing in xf86ProcessCommonOptions
added POINTER_MULTIPOINTER define. Is used in xf86PostMotionEvent and
xf86PostButtonEvent for the flags that are passed into GetPointerEvents()
global:
added flags to configure.ac to enable/disable MPX define
added flags to dix-config.h.in to define MPX
2006-11-16 12:51:08 +10:30
Peter Hutterer
4d07b50372
dix: cleaned up GetPointerEvents() to avoid code duplication.
2006-11-16 10:55:15 +10:30
Peter Hutterer
f737cd925e
o fix minor error in comment for GetPointerEvents()
2006-11-15 17:50:02 +10:30
Jurij Smakov
acb5ff4c73
ffs: handle 0 argument (bug #8968 )
...
Handle an argument of 0 in ffs(), instead of looping indefinitely.
Add an ffs prototype to dix.h, and add includes to ffs.c.
(cherry picked from 34164e551e4c3909322d50b09835ca4ac1d49d68 commit)
2006-11-11 14:13:56 +02:00
Daniel Stone
e7900d68c3
remove trailing whitespace
...
Whitespace police in full effect.
2006-11-08 15:36:47 +02:00
Daniel Stone
b5438f7fb2
Get*Events: massive reorganisation
...
Reorganise the code logically, and put more comments in.
Clip valuators in proximity calls.
2006-11-08 15:30:03 +02:00
Daniel Stone
b55007d8cc
SyntheticMotion: don't dereference sprite.screen when not using Xinerama
2006-11-08 15:29:17 +02:00
Daniel Stone
f93d10ce9b
dix: remove staggeringly broken vendor workarounds
...
Dear SGI,
No.
Scant regards,
Daniel
2006-11-08 15:29:16 +02:00
Daniel Stone
c3ea1f7db4
dix/mi: still more warning fixes
...
Fix up prototypes for PrintChildren and PrintWindowTree in the dix.
Make miPrintRegion be unconditionally defined, and move the prototype into
regionstr.h.
Change a bunch of ScreenPtr pScreen = foo; to
ScreenPtr pScreen; pScreen = foo; in window.c, so we avoid unused variable
references (as inline REGION_* doesn't reference pScreen).
2006-11-08 15:29:16 +02:00
Daniel Stone
3a9b964258
dix: add missing prototypes
...
Add missing prototype for ffs, and include headers from ffs.c.
Move PostSyntheticMotion prototype to input.h.
2006-11-08 15:29:16 +02:00
Daniel Stone
6716488fa2
dix: remove unused debug code
2006-11-08 15:29:16 +02:00
Daniel Stone
51813d77bf
dix: remove unused variable
2006-11-08 15:29:15 +02:00
Laurence Withers
ae58d349c1
CreateColormap: fix return value (bug #7083 )
...
Return BadMatch when an unsupported visual type is given, not BadValue --
this is correct according to the spec.
2006-11-08 15:29:15 +02:00
Adam Jackson
05f1c30246
Merge branch 'autoconfig-for-7.2'
2006-11-07 18:42:54 -05:00
Keith Packard
1dcda4f3c5
Avoid dereferencing sprite.screen when Xinerama is not running. ( #8925 )
...
With Xinerama support built into the X server but not in use,
sprite.screen is NULL and yet the SyntheticMotion
macro would dereference it. Avoid that by just passing sprite.screen
to PostSyntheticMotion which can then dereference it when Xinerama is
enabled.
Also, define PostSyntheticMotion in dixevents.h and include dixevents.h in
getevents.c
2006-11-07 01:29:51 -08:00
Eamon Walsh
3d39c02fe6
More work on Bug #8875 : revert previous fix and try using client argument
...
instead of serverClient. Also don't use totalClientSize as it is not
initialized until after the first call to InitClient.
2006-11-06 21:25:52 -05:00
Alan Coopersmith
49a26681b2
Add DTrace probe points for X server <-> client communications
...
See http://people.freedesktop.org/~alanc/dtrace/ for more details
2006-11-03 12:54:43 -08:00
Alan Coopersmith
58bf9a142d
PostSyntheticMotion needs to be extern, not static, since it's in getevents.c
2006-11-02 14:43:02 -08:00
Daniel Stone
81728558a0
input: add non-keyboard bell ringing function
...
Add a generic 'ring the bell' function (console bell on Linux and BSD,
/dev/audio on Solaris), and add DDX functions for this. Make this the
core keyboard's bell.
Port Xvfb and Xnest to this.
Port XFree86 to this, with OS-specific hooks for Linux, BSD, and Solaris
taken from foo_io.c in the old layer.
2006-11-01 23:10:26 +02:00
Daniel Stone
196c5836f4
CoreKeyboardProc: annotate with FIXME
...
Setting an empty keymap by default isn't wildly useful.
2006-10-27 01:27:31 +03:00
Daniel Stone
f9a1e456f8
CoreKeyboardProc: don't leak keymap and modmap
...
SetKeySymsMap does a copy here, so try not to leak them.
2006-10-27 01:25:39 +03:00
Daniel Stone
85212eb504
getValuatorEvents: make sure we put MORE_EVENTS in the right places
...
Make sure we put MORE_EVENTS in with the device id if there are, in fact,
more valuator events coming.
2006-10-27 01:23:58 +03:00
Daniel Stone
aabc087998
GetPointerEvents: always ensure correct number of events
...
Ensure correct number of valuator events are returned, and that we always
increment events correctly.
2006-10-25 02:21:39 +03:00
Daniel Stone
b9e180e632
port all users to the new DIX motion history API
...
Port KDrive, Xvfb, and Xnest, as well as the virtual core devices, to the
new motion history API. Make GetPointerEvents also update the history.
2006-10-25 01:09:19 +03:00
Daniel Stone
5b38eb69cd
dix: add motion history support
...
Add motion history support (sort of based on the XFree86 DDX's
implementation) to the DIX.
2006-10-25 01:08:29 +03:00
Daniel Stone
11fb58be77
miscellaneous warning fixes
...
Use the correct type for time, and fix the mi prototype of EnqueueEvent.
2006-10-25 01:07:36 +03:00
Daniel Stone
cccf7ae0ff
GetProximityEvents: add (untested) function
...
Add untested first guess at what GetProximityEvents should look like.
2006-10-23 06:55:21 +03:00
Daniel Stone
35fa4ac12b
GetPointerEvents: break into separate functions
...
Break out clipAxis, clipValuators, and getValuatorEvents, into
separate functions, to be used by the proximity event code.
2006-10-23 06:23:45 +03:00
Daniel Stone
eec1822591
dix/getevents: move SyntheticMotion to getevents.c
...
Mostly, this is just a cheesy hack to ensure that getevents.o gets
included when linking. Sigh.
2006-10-23 02:48:30 +03:00
Daniel Stone
bc701a1429
dix/getevents: cosmetic cleanups, remove keymap copy from GKVE
...
Remove keymap copy from GetKeyboardValuatorEvents, as
SwitchCoreKeyboard now takes care of this for us.
Remove unused variable and function prototype.
Update comments to be as informative as possible.
2006-10-23 00:08:32 +03:00
Daniel Stone
be21630164
dix, Xi: make use of deviceid in DevicePresenceNotify
...
Use the deviceid and control fields in DevicePresenceNotify since
the last push to inputproto to send a DPN whenever a control changes
on a device.
2006-10-22 16:33:02 +03:00
Daniel Stone
77e724585f
minor formatting fixes
2006-10-22 11:45:12 +03:00
Zephaniah E. Hull
e26a494f41
Merge branch 'input-hotplug' of git+ssh://git.freedesktop.org/git/xorg/xserver
2006-10-21 04:26:14 -04:00
Zephaniah E. Hull
736b0d5078
DEVICE_TOUCHSCREEN becomes DEVICE_ABS_CALIB.
...
Update the DEVICE_ABS_CALIB stuff to include the new elements.
New DEVICE_ABS_AREA support.
dev->touchscreen becomes dev->absolute, with _CALIB and _AREA stuff in it.
Update xfree86 to compile with this, kdrive needs an update too.
2006-10-21 04:24:49 -04:00
Daniel Stone
aeba855b07
move keymap copy to event processing, from enqueuing
...
Move the keymap copying to event processing time (in
ProcessInputEvents), instead of being at event enqueuing time.
Break SetCore{Pointer,Keyboard} out into separate functions.
Change mieqEnqueue to take a device pointer, that asks for the
_original_ device associated with this event.
2006-10-20 00:43:11 +03:00
Daniel Stone
a8d3dad9d9
xi: add DEVICE_ENABLE control
...
Add DEVICE_ENABLE control, which allows runtime enabling and disabling
of specific devices.
2006-10-20 00:43:11 +03:00
Daniel Stone
fc9b5f84b2
dix/devices: add devices in proper forward order
...
Add devices in forward order with the normal linked list convention.
Previously, AddInputDevice would add all the devices in reverse order to
off_devices, before they were added again in reverse order to devices with
EnableDevice.
This just makes both work in forward order, which provides the ordering as
you'd expect when hotplugging devices (i.e. adds them to the head, not the
tail).
2006-10-15 20:01:01 +03:00
Daniel Stone
4d8030076e
dix: move GetKeyboardEvents/GetPointerEvents to a new file, export symbols
...
Move GKE and GPE to a separate file, to help stem the events.c explosion.
Mark GKE/GKVE/GPE as _X_EXPORT.
2006-10-14 22:14:07 +03:00
Daniel Stone
6afc7c2846
dix/devices: remove XACE merge debris
2006-10-14 15:54:35 +03:00
Daniel Stone
335b503c5e
Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug
2006-10-13 18:10:45 +03:00
Daniel Stone
33406da096
GetKeyboardEvents: add first_valuator argument to GKVE
2006-10-08 23:20:56 +03:00
Daniel Stone
1546a39814
GetKeyboardValuatorEvents: also take first_valuator param
...
Take a first_valuator parameter, which specifies the first valuator.
2006-10-08 21:40:53 +03:00
Daniel Stone
41bb9fce47
mipointer: take device arguments, split miPointerAbsoluteCursor
...
Update mipointer API to take a device argument to (almost) all functions,
and split miPointerAbsoluteCursor into a couple of separate functions.
Remove miPointerAbsoluteCursor call from mieq, as we now deal with it in
GetPointerEvents.
Make miPointerSetPosition (successor of miPointerAbsoluteCursor) take
pointers to x and y, so it can return the clipped values.
Modify callers of miPointer*() functions to generally use the new
functions.
This should fix things with multi-head setups.
2006-10-08 20:34:32 +03:00
Daniel Stone
be8dfafd1d
warning cleanups
...
Fix still more warnings.
2006-10-08 20:32:16 +03:00
Daniel Stone
c2fab469b6
dix/devices: clean up debugging
2006-10-08 18:26:26 +03:00
Daniel Stone
b559cbb160
dix/CoreProcessKeyboardEvent: remove debugging for every key event
...
Also change #ifdef DEBUG/ErrorF/#endif to DebugF in FixKeyState.
2006-10-08 16:23:14 +03:00
Daniel Stone
58314756ae
GetPointerEvents: add first_valuator parameter
...
Add a first_valuator parameter. Looks correct by inspection, but untested
with first_valuator != 0 as yet.
2006-10-08 16:18:05 +03:00
Daniel Stone
84f5d2291c
GetPointerEvents: fix relatively harmless typo
...
Change !(cp->button || !cp->valuator) to (!cp->button || !cp->valuator).
2006-10-08 15:30:24 +03:00
Daniel Stone
2cf1098436
dix/events, mi/eq: remove utterly ridiculous debugging
...
Remove debugging which can cause long-lived Xorg logs to grow well above 1GB
if built with --enable-debug.
2006-09-30 17:05:46 +03:00
Daniel Stone
5d99e05f05
Merge branch 'input-hotplug' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug
2006-09-29 00:35:07 +03:00
Daniel Stone
ad631afcf3
make core keyboard/pointer map functions act on all core-sending devices
...
Make Set{Keyboard,Modifier,Pointer}Mapping act on all devices which send core
events.
Change LegalModifier to accept a DeviceIntPtr.
2006-09-29 00:34:23 +03:00
Adam Jackson
d05e0a97bb
Enable DPMS by default.
2006-09-14 18:49:12 -04:00
Zephaniah E. Hull
5893375786
Warning fix, and a syntax fix in a #if 0 section of code.
2006-09-10 15:50:51 -04:00
Eamon Walsh
9deb579dc9
Zero out newly created ExtensionEntry structures, but only after the
...
devPrivates have been initialized.
2006-09-08 15:25:17 -04:00
Eamon Walsh
cec392656c
Zero out newly allocated ClientRec structures.
...
This is required to initialize the devPrivates to a known state.
2006-09-08 15:24:23 -04:00
Daniel Stone
5436fce090
[PATCH] GetKeyboardValutorEvents: be even more careful
...
Don't accept devices without a keyboard feedback class.
2006-08-29 15:18:06 +03:00
Eamon Walsh
13c6713c82
Add four new XACE hooks: auditing, key event notification, window init
2006-08-25 18:17:01 -04:00
Daniel Stone
2b06c69c8f
GKVE: pass correct arguments to XkbCopyKeymap
...
Fix horrendous thinko. Indicators now work perfectly.
2006-08-24 14:51:26 +03:00
Daniel Stone
6323a11d0d
XkbCopyKeymap: optionally send NewKeyboardNotify/MapNotify events
...
Optionally send a NewKeyboardNotify or MapNotify event when copying the
keymap; modify GetKeyboardValuatorEvents to make use of this.
2006-08-23 18:53:04 +03:00
Daniel Stone
8f8487ff99
xkb/gkve: copy XKB map, not pointer-assign
...
Write a new function to copy an XKB map (does everything but geometry at
the moment), and use that instead of nasty pointer assignments.
2006-08-23 14:33:41 +03:00
Eamon Walsh
52ba722e4c
Merge branch 'XACE-modular' into my-XACE-modular
2006-08-21 18:49:31 -04:00
Alan Coopersmith
05541259bd
Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into XACE-modular
2006-08-21 13:07:41 -07:00
Daniel Stone
a56b98bb04
dix: enable null root cursor
...
Enable a blank root cursor, selectable with --enable-null-root-cursor at
configure time.
2006-08-18 18:10:09 +03:00
Daniel Stone
0704bb298c
Merge branch 'master' into input-hotplug
2006-08-18 17:30:14 +03:00
Daniel Stone
a1ac0440bb
dix: fix whiteroot thinko
...
Note to self: run git update-index _after_ testing, not just before.
2006-08-18 17:30:00 +03:00
Daniel Stone
cb0a565d2b
dix: add whiteroot flag
...
Add a -wr option to use a white root window, and use a BackPixel rather
than BackPixmap for both white and black root windows.
2006-08-18 17:04:48 +03:00
Daniel Stone
633b6a69f5
Merge branch 'master' into input-hotplug
2006-08-17 21:25:14 +03:00
Daniel Stone
7da51447ea
events.c: fix tiny XEvIE thinko
...
Make sure xeviehot gets updated after the ConfineToShape() call.
2006-08-17 21:24:07 +03:00
Daniel Stone
5d082f0563
events.c: make XEvIE a little less verbose
...
Change a lot of:
#ifdef XEVIE
xeviehot.x =
#endif
sprite.hot.x = ...
#ifdef XEVIE
xeviehot.y =
#endif
sprite.hot.y = ...
to one single
#ifdef XEVIE
xeviehot.x = sprite.hot.x;
xeviehot.y = sprite.hot.y;
#endif
at the end of the functions.
2006-08-17 21:20:58 +03:00
Daniel Stone
95dbfcf882
events.c: make XEvIE a little less verbose
...
Change a lot of:
#ifdef XEVIE
xeviehot.x =
#endif
sprite.hot.x = ...
#ifdef XEVIE
xeviehot.y =
#endif
sprite.hot.y = ...
to one single
#ifdef XEVIE
xeviehot.x = sprite.hot.x;
xeviehot.y = sprite.hot.y;
#endif
at the end of the functions.
2006-08-17 21:18:18 +03:00
Daniel Stone
c6c39afde3
dix/events.c: add YAFIXME
...
Add another FIXME to the cacaphony of XXX and FIXMEs in this file.
2006-08-17 21:13:09 +03:00
Daniel Stone
cd3f744b1f
fix missing brace, trim unused variables
2006-08-15 15:54:13 +03:00
Daniel Stone
34228d8b28
GPE: fix absolute button events / GKVE: (non-XKB) don't repeat lock keys
...
Fix absolute button events in GPE, where we would previously send valuator
events without bumping numEvents accordingly, causing the core event to
go missing.
In the non-XKB path in GKVE, implement proper lock behaviour (one press to
enable, one press to disable, discard releases).
Fix debug_events prototype.
2006-08-15 15:23:53 +03:00
Daniel Stone
d6433be3cc
Merge branch 'master' into input-hotplug
2006-08-12 21:50:52 +03:00
Daniel Stone
2bf9e3dc1e
make DIX more tolerant of devices without a CtrlProc (Debian #269860 )
...
Return BadDevice on client requests for devices without a CtrlProc, instead
of tanking horribly.
2006-08-12 21:50:39 +03:00
Daniel Stone
984babe86b
remove obsolete vendor defines
...
Remove random behaviour changes for SGI and MetroLink.
2006-08-12 21:43:38 +03:00
Alan Coopersmith
c2535f6792
Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into XACE-modular
2006-08-10 10:37:59 -07:00
Daniel Stone
45bce556e8
GetMaximumEventsNum: be more conservative
...
Be slightly more conservative in our maximum event count if we're using
XKB (and thus don't need to count the extra repeat events).
2006-08-10 18:02:47 +03:00
Daniel Stone
3832a3d7db
GKVE: don't repeat modifiers when using XKB
...
Make sure we don't ever repeat modifiers (previously was repeating when
using XKB); only do explicit KP/KR repeats in the non-XKB case. XKB will
take care of repeating when we're using it.
2006-08-10 14:13:51 +03:00
Daniel Stone
9f188416bb
core devices: clear devicePrivates on close
2006-08-10 14:00:34 +03:00
Daniel Stone
539d1f3347
GKVE/GPE: have DDX allocate events
...
Don't allocate events on every GKE/GKVE/GPE call, just have the DDX manage
it instead. Introduce GetMaximumEventsNum(), which is the maximum number
of events these functions will ever produce.
2006-08-10 14:00:14 +03:00
Daniel Stone
fe351a711e
GKVE: send XkbMapNotify, not XkbNewKeyboardNotify
...
Sending MapNotify is more correct in this case than NKN, so do that.
2006-08-08 14:54:10 +03:00
Daniel Stone
3108981631
Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug
2006-08-08 12:01:12 +03:00
Daniel Stone
12dbd8a02f
remove optional R3 backwards compatibility
...
Remove the permitOldBugs flag, which enabled backwards compatbility with
broken R2/R3 era clients.
2006-08-07 23:43:40 +03:00
Daniel Stone
458c63a841
enable adding devices after removal of a middle device
...
Allow new devices to be added after a device that _wasn't_ the last on the
list was removed, by ensuring inputInfo.numDevices always increases, and
never decreases.
2006-08-07 23:02:17 +03:00
Daniel Stone
a31d11a7a8
GKVE: get rid of bogus double-release check
...
Get rid of a bogus double-release check which broke non-XKB servers.
2006-08-07 23:01:23 +03:00
Daniel Stone
d1c18af27e
GPE: use button map for DBP/DBR, not just BP/BR
...
Make sure we use the button map for extended events, not just core.
2006-08-07 21:11:38 +03:00
Daniel Stone
98fdf874ee
move all autorepeat logic to DIX
...
Move core autorepeat logic for keyboards down to the DIX, remove it from
KDrive.
2006-08-07 16:51:39 +03:00
Eamon Walsh
9138d5a51e
Make SecurityLookupIDBy* part of the base functionality.
2006-08-03 18:24:04 -04:00
Eamon Walsh
96e45626c4
Rebase Security extension to use devPrivates for storing security state.
2006-08-02 20:29:59 -04:00
Eamon Walsh
3c23dec596
Call ClientStateCallback on serverClient devPrivates initialization.
2006-08-02 13:39:49 -04:00
Eamon Walsh
b04d648547
Added devPrivates support to the ExtensionEntry structure.
2006-07-31 19:35:08 -04:00
Daniel Stone
7465010d59
Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug
2006-07-21 19:05:41 -04:00
Adam Jackson
0aaac95b0d
Remove RCS tags. Fix Xprint makefile braindamage.
2006-07-21 17:56:00 -04:00
Daniel Stone
7711c56d2e
xephyr: fix keymap, pointer; dix: fix multiple axes
...
Initialise our axes properly in the DIX, and make sure we don't
unnecessarily clip maxval when it's not set.
Fix keymap copying in Xephyr (to some degree: it's still broken),
and set nAxes and nButtons properly.
2006-07-21 15:19:54 -04:00
Daniel Stone
463e0fe35b
update KDrive to new input API
...
Update KDrive to fit the new API (mieqInit and InitPointerDeviceStruct), and
include InitTouchscreenDeviceStruct in the DIX.
2006-07-21 15:19:54 -04:00
Daniel Stone
1987af8c49
add virtual core devices to DIX
...
Add virtual core devices, with proper keymaps etc, to the DIX.
2006-07-21 15:19:53 -04:00
Daniel Stone
e896195eab
remove extraneous font debugging code
...
Some of it didn't compile, and some of it was just unnecessary.
2006-07-21 15:19:53 -04:00
Daniel Stone
ecfad74c48
add support for built-in fonts
...
Use --enable-builtin-fonts to only use built-in fonts, and avoid loading
fonts.
2006-07-21 15:19:52 -04:00
Daniel Stone
a274e7296b
add GetPointerEvents/GetKeyboardEvents framework
...
Add GetPointerEvents (with XFree86 pointer acceleration) and GetKeyboardEvents
to the DIX. Extend the ValuatorClass structure to account for same.
2006-07-21 15:19:51 -04:00
Daniel Stone
02a9531156
add basic D-BUS configuration mechanism
...
Also move LookupDeviceIntRec into the DIX, and add InputOption type, and
NewInputDeviceRequest prototype (DIX requests DDX to add a device). Does not
link without an implemented NIDR.
2006-07-21 15:19:49 -04:00
Daniel Stone
84683f19b4
get rid of XFree86LOADER, XFree86Server, XFree86Module, and IN_MODULE
...
Get rid of almost all uses of these definitions. They're still defined for
delinquent out-of-tree drivers, and also for the Mesa build. As well as
for miinitext.c. But largely gone.
2006-07-18 18:17:38 -04:00
Tilman Sauerbeck
63f13e01ee
Bug #7097 : do case-insensitive comparison for some hotkeys.
...
xkb's strcasecmp implementation has been moved to the dix so it's now
safe to just use strcasecmp().
2006-07-08 11:33:44 +02:00
Alan Coopersmith
90af38fa0c
Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver
...
Conflicts:
Xext/appgroup.c
2006-06-21 16:23:31 -07:00
Alan Coopersmith
3e098efa35
Correct ifdef - should be XACE, not XCSECURITY
2006-06-21 16:21:03 -07:00
Alan Coopersmith
77c947b900
Move Xserver internal API for appgroup from Xagsrv.h to appgroup.h
...
(Since all use is inside the xserver module, might as well keep the header
in the Xserver module instead of in proto/XExt to allow easier synchronization
of updates.)
2006-06-21 16:18:41 -07:00
Greg Kroah-Hartman
865884d050
fix compiler warning in dix/xpstubs.c when XPRINT is not defined
2006-06-21 14:16:28 -07:00
Alan Coopersmith
d44b2a0a57
Move Xserver API for security extension to securitysrv.h
2006-06-20 18:22:51 -07:00
Eamon Walsh
37f0ae0245
Replace XC-SECURITY code with XACE security hooks
...
(cherry picked from 8526cd6395
commit)
2006-06-19 17:09:37 -07:00
Greg Kroah-Hartman
8f5aa38abf
fix compiler warning about XKB_IN_SERVER redefinition
2006-06-07 12:33:44 -07:00
Daniel Stone
a9ed5a8790
Kill LBX, too.
2006-06-01 22:06:41 +00:00
Daniel Stone
32be08ba72
Remove horrendously ugly DDX backward-compatibility.
2006-06-01 19:22:38 +00:00
Adam Jackson
bc0c56c407
Bug #6924 : Restore the ABI for DrawableRec and ColormapRec to the state
...
they were in prior to the fix for #6438 . Based on a patch from Andy
Ritger.
2006-05-22 15:47:56 +00:00
Fredrik Höglund
e1fc15a85f
Put the screensaver extension back in the Xext module.
...
Move the screenSaverSuspended variable to DIX globals.
Restore the old link order for the Xorg and Xdmx binaries.
2006-04-05 21:08:45 +00:00
Søren Sandmann Pedersen
acca49b1a5
Fri Mar 31 12:37:16 2006 Søren Sandmann <sandmann@redhat.com>
...
Fix copyright statement
2006-03-31 17:39:35 +00:00
Deron Johnson
e31e8ace10
Fix composite overlay window bug 6411
2006-03-29 17:51:54 +00:00
Adam Jackson
7deaaa797c
Big old pile of warning fixes.
2006-03-28 01:21:00 +00:00
Fredrik Höglund
ae935832fa
Refactored the screensaver and DPMS timer code to use the screensaver timer
...
for both screensaver and DPMS. Removed the SetDPMSTimers() and
FreeDPMSTimers() functions.
2006-03-24 20:50:13 +00:00
Adam Jackson
f105b8da11
Mark everything in dixsym.c as _X_EXPORT.
2006-02-15 20:44:13 +00:00
Adam Jackson
010d6effa6
Mark everything in {ext,font}sym.c as _X_EXPORT.
2006-02-15 19:15:32 +00:00
Søren Sandmann Pedersen
c2dedf4d17
Thu Jan 12 17:09:18 2006 Søren Sandmann <sandmann@redhat.com>
...
Add new functions to enable and disable events on Map and Unmap.
Use them here to make sure Composite redirect doesn't cause Map/UnmapNotify
events that would confuse window managers.
2006-01-12 22:14:56 +00:00
Kevin E Martin
7c00afd0ec
Define XFree86Server only where it is required.
2005-12-02 06:02:45 +00:00
Kevin E Martin
da5d66f2ff
Fix usage of XFree86LOADER/XFree86Module/IN_MODULE and update loadable
...
module builds to reflect this change.
2005-11-29 16:39:33 +00:00
Kevin E Martin
90cf8e339b
Fix vendor string and release version reported by the servers. Enable
...
security, lbx and xevie extensions to give us parity with monolithic
tree.
2005-11-03 17:08:06 +00:00
Kristian Høgsberg
dc6ac8e46f
Add DGA configure option and add various files that we should be dist'ing.
...
Simplify xf86DefModeSet.c rule a bit.
2005-10-05 21:38:40 +00:00
Daniel Stone
c3d6799cee
Bug #594 : CAN-2005-2495: Fix exploitable integer overflow in pixmap
...
creation, where we could create a far smaller pixmap than we thought,
allowing changes to arbitrary chunks of memory. (Søren Sandmann
Pedersen)
2005-09-13 01:33:19 +00:00
Daniel Stone
5c5c51fa6d
Initialise private arrays with calloc, rather than standard malloc.
...
(Benjamin Herrenschmidt)
2005-09-05 07:40:50 +00:00
Eric Anholt
ea80b5db25
Fix a use-after-free of cursor data by refcounting for the sprite.current
...
reference. The particular path seen was XFixes' ReplaceCursor()
resulting in the sprite.current being freed, but then it getting
accessed during the ChangeToCursor() that happens as a result of
WindowHasNewCursor().
2005-08-25 22:11:04 +00:00
Stuart R. Anderson
d8a1241a24
Add a safety check to catch when numDepths GCperDepthexceeps MAXFORMATS
2005-07-23 17:49:45 +00:00