Commit Graph

5204 Commits

Author SHA1 Message Date
Peter Hutterer 4fd0885978 Xi: remove some leftovers from ProcessOtherEvents.
Core handling not needed anymore here.
2008-01-15 18:58:42 +10:30
Peter Hutterer 32aa252e98 dix: Process an input event as a single event, instead of two separate ones.
This is a significant shift in how input events are perceived. The common
approach was to treat a core event as a different entity than the XI event.
This could result in the XI event being delivered to a different client than
the core event. This doesn't work nicely if they come from the same device.

Instead, we treat an input event as a single event, that is delivered through
two separate APIs. So when delivering an event, we first try the XI event,
then the core event. If the window want's neither, we go to the parent and
repeat. Once either core or XI has been delivered, the processing stops.

Important: Different to the previous method, if a client registers for core
button events, the parent window will not get XI events. This should only
cause problems when you're mixing core and XI events, so don't do that!

Generic events don't fit into this yet, they cause me headaches.
2008-01-15 18:41:51 +10:30
Tiago Vignatti 7a0d16ef0a Removed some warnings. 2008-01-15 03:27:16 -02:00
Tiago Vignatti 315d6a2b1d Fix Xephyr compilation without GLX. 2008-01-15 02:59:56 -02:00
Peter Hutterer 0969a9f749 dix: Emulate core events within CheckDeviceGrabs and ComputeFreezes.
This should restore the correct passive grab processing. When checking for
passive grabs, the core event is emulated and we check first for XI grabs on
the window, then for core grabs. Regardless of which event activates the grab,
the XI event is stored in the device's EQ.

When replaying the event, we take the XI event and replay it on the next
window, again including the emulation of the core event.
2008-01-15 11:31:12 +10:30
Dave Airlie 1f83f40525 xf86Cursors: fix memset for non-square cursors 2008-01-15 10:21:17 +10:00
Bernardo Innocenti e6ea3147bf exa: make the prototype for exaGetPixmapFirstPixel() public
This fixes a warning in amd_drv which is using it.

Signed-off-by: Bernardo Innocenti <bernie@codewiz.org>
2008-01-14 13:09:13 -05:00
Peter Hutterer a83a0c5a14 dix: remove obsolete comment.
Pairings don't exist anymore and the documented issue is a non-issue now.
2008-01-13 16:14:29 +10:30
Jeremy Huddleston 180a5aba4d XQuartz: Fixed copy-paste error with login_shell commit
(cherry picked from commit 6deec3acc6f8010b5b53a1e55a0a2c4080ba69d2)
2008-01-12 21:34:09 -08:00
Jeremy Huddleston 6fd4a5e2e4 XQuartz: Corrected copyright X.org Project -> X.org Foundation
(cherry picked from commit f21631444816fc12b8a534c2cf79e6ac6c2af7c9)
2008-01-12 12:02:01 -08:00
Jeremy Huddleston f72255639c XQuartz: added 'login_shell' option to defaults
so the user can choose something other than /bin/sh
(cherry picked from commit b549cf18cebd3435d70f62855239484974c455a1)
2008-01-12 12:01:57 -08:00
Jeremy Huddleston ec24a6b5aa XQuartz: Fixed switching into XQuartz via expose.
(cherry picked from commit 627ed60ce5d7499761028edf379ebd95250d3e04)
2008-01-12 12:01:52 -08:00
Alan Coopersmith 6844bd2e63 More Xv extension byte swapping fixes 2008-01-09 19:52:00 -08:00
Peter Hutterer 38bf01bd1c Merge branch 'master' into mpx 2008-01-10 13:38:46 +10:30
Peter Harris 0883e838e2 xf86misc.c: Avoid use of swapped values 2008-01-09 18:43:55 -08:00
Alan Coopersmith 59a63d72a1 Fix reference to old versions of XFree86 to not say "Xorg 4.2 or earlier" 2008-01-09 18:42:58 -08:00
Peter Hutterer 4e85c7c322 Xi: keep a counter of buttons down to avoid duplicate press/release events.
If two devices are attached to the same master device, pressing button 1 on
each of them leads to two button presses from the same device. Some apps
really don't like that.

So we just put a counter in place and only send the first press and the last
release.
2008-01-09 17:36:39 +10:30
Peter Hutterer e070c2cbef mi: change infamous "Tossed event ..." error for something more explanatory.
Few whitespace errors fixed.
Two ErrorF's prefixed with [mi].
(cherry picked from commit 117458d2db)
2008-01-09 13:42:10 +10:00
Richard Purdie c31aead0fe [Kdrive] make XCalibrate 'orientation aware' 2008-01-08 12:31:47 +01:00
David Nusinow 30375cd6d1 Don't log DPMS enabling as being from xorg.conf if it's not 2008-01-07 20:57:30 -05:00
Peter Hutterer 981bb9f1e3 dix: set the correct number of valuators in valuator events.
(first_valuator + num_valuators) must never be larger than the number of axes,
otherwise DIX freaks out. And from looking at libXI, anything larger than 6 is
wrong too.
(cherry picked from commit 9f6ae61ad1)
2008-01-08 12:06:02 +10:30
Peter Hutterer 20ace6321a dix: don't try to confine cursor on screen restructure if there is no cursor.
Stops segfaulting when using xrandr. Yay.
2008-01-07 20:08:56 +10:30
Peter Hutterer 57a491e6d3 dix: init GrabPrivateKey to correct value.
Merge detritus from last pull.
2008-01-07 20:06:32 +10:30
David Nusinow 260505e3c5 Log enabling of DPMS even when it's not set in xorg.conf 2008-01-06 16:37:13 -05:00
Julien Cristau 7e76221659 Fix the name of the XFree86-Misc extension in the xorg.conf manpage. 2008-01-06 18:23:09 +01:00
Julien Cristau 59df687835 Document the AllowEmptyInput, AutoAddDevices and AutoEnableDevices flags
Add documentation for the new AllowEmptyInput, AutoAddDevices and
AutoEnableDevices server flags in the xorg.conf manpage.
2008-01-06 17:02:03 +01:00
Jeremy Huddleston 7d226d6a25 XQuartz: Cleanup for strict-prototyping
Also fixed DarwinEQEnqueue to match changes to the callback
And also use dpmsstubs.c rather than copying the code into darwin.c
(cherry picked from commit 4c5c30a4beb7a427b00b18097f548876ad3c11d7)
2008-01-05 03:17:27 -08:00
Jeremy Huddleston 11967dce11 XQuartz: Fixed copyright in About box for 2008. Happy New Year! 2008-01-04 23:10:10 -08:00
Jeremy Huddleston aca75f389e XQuartz: Flush the debug log for easier debugging
Also cleaned up formatting in xpr's eventHandler
(cherry picked from commit 16861d6d4239c7f3918332ef07752f1e211afb23)
2008-01-04 23:10:10 -08:00
Alan Hourihane 57468a696e Fix Line drawing with CapNotLast set in PolySegment. 2008-01-04 12:37:55 +00:00
Eamon Walsh 39cb782f28 XACE: DeleteCallbackList zeroes out its argument so don't do it twice. 2008-01-03 23:17:06 -05:00
Eamon Walsh 7f376f23db devPrivates rework: Free callback lists after use. 2008-01-03 23:17:06 -05:00
Eamon Walsh de18703d2a dix: Fix bug+leak in callback manager DeleteCallbackList function. 2008-01-03 23:17:06 -05:00
Alex Deucher 20eb26f9d1 Fix potential crasher in xf86CrtcRotate()
xf86CrtcRotate() is called by randr 1.2 drivers via xf86CrtcSetMode() or xf86SetDesiredModes()
during ScreenInit() at which point pScrn->pScreen is not set. If a user specifies a rotation
in their config file pScrn->pScreen is dereferenced and boom.
2008-01-03 22:53:36 -05:00
Peter Hutterer 249b9b30c1 Xi: remove file for the obsolete ChangePointerKeyboardPairing request handling. 2008-01-04 13:49:48 +10:30
Peter Hutterer e4a214e40d dix: don't free device's devPrivates manually, dixFreePrivates does it.
Merge detritus from last pull.
2008-01-04 13:32:53 +10:30
Eamon Walsh cd0603c2dc Bug #13765: Heap corruption in XC-SECURITY extension code. 2008-01-03 21:41:02 -05:00
Jeremy Huddleston e46d559739 XQuartz: Cleaned up color map configuration.
8 bit color still doesn't work, but the -depth command line argument now works properly.
(cherry picked from commit 6765949c27c053d22882f54337cfd09203aa5383)
2008-01-03 13:25:56 -08:00
Eamon Walsh 17a9714a67 Bug #13794: Update MBE extension devPrivates to new interface. 2008-01-03 14:46:54 -05:00
Peter Hutterer b2da44c76d dix: DoChangeKeyboardControl shouldn't be using inputInfo.keyboard. 2008-01-03 18:51:44 +10:30
Peter Hutterer 9cc41b88df Xi: ProcXSetClientPointer should directly check for the client from the id.
The window ID includes the client ID anyway, so we might as well just look up
the client directly instead of trying to get the window first and the client
from the window.

This also fixes a possible issue with XACE. If the client had permission to
write on the client but not on the window, the previous approach would have
failed.
2008-01-03 18:48:13 +10:30
Peter Hutterer 521fdc28d8 xfixes: switch a few inputInfo.pointer to PickPointer 2008-01-03 18:43:18 +10:30
Peter Hutterer 37194b1355 Xi: switch to using "rc" (instead of "err") as returncode.
All the rest of XI uses rc and returns rc in case of error, so make
mpx-related stuff comply. This stops the rest of XI sending the error
manually.
This is just a cosmetic change to be in line with the rest.
2008-01-03 18:36:33 +10:30
Peter Hutterer c7e9b67c54 dix: free ClassesRec when a BadAlloc occurs during CoreKeyboardProc. 2008-01-03 18:09:56 +10:30
Peter Hutterer 8da83836b6 Merge branch 'master' into mpx
Conflicts:

	XTrap/xtrapddmi.c
	Xext/security.c
	Xext/xprint.c
	Xext/xtest.c
	Xext/xvdisp.c
	Xi/exevents.c
	Xi/grabdevb.c
	Xi/grabdevk.c
	Xi/opendev.c
	Xi/ungrdev.c
	Xi/ungrdevb.c
	Xi/ungrdevk.c
	dix/cursor.c
	dix/devices.c
	dix/dixutils.c
	dix/events.c
	dix/getevents.c
	dix/main.c
	dix/window.c
	hw/xfree86/ramdac/xf86Cursor.c
	include/dix.h
	include/input.h
	include/inputstr.h
	mi/midispcur.c
	mi/miinitext.c
	mi/misprite.c
	render/animcur.c
	xfixes/cursor.c
	xkb/xkbAccessX.c
2008-01-03 17:04:54 +10:30
Alan Coopersmith ccf6636d2c Kill xf86getpagesize even harder (dummylib & ioport) 2008-01-02 19:28:33 -08:00
Alan Coopersmith dfd682b582 X.Org bug 4947/Sun bug 6646626: Xv extension not byte-swapping properly
X.Org Bugzilla #4947 <https://bugs.freedesktop.org/show_bug.cgi?id=4947>
Sun bug 6646626 <http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6646626>

Don't use swapped data after swapping it.   When done swapping data,
send the swapped data, not the address of the pointer to it, to the client.
2008-01-02 19:27:22 -08:00
Alan Coopersmith f6666dcc3b Add dixAllocatePrivate stub to dummylib for utils
Normally not necessary, except when building non-optimized/debug causes
the inline functions from private.h to appear in os-support/libxorgos.la
2008-01-02 19:19:55 -08:00
Alan Coopersmith 73f4229960 Fix names/types of new vuidMouse{Get,Set}ScreenPrivates macros 2008-01-02 19:17:54 -08:00
Alan Coopersmith 895073f6b4 Restore include & typedef needed by dtrace
996b621bec deleted a couple lines too many
2008-01-02 18:09:26 -08:00