Commit Graph

3460 Commits

Author SHA1 Message Date
Daniel Stone
f292de2ef1 XKB: Fix size_syms calculation bug
Apparently it needed to be nSyms*15/10, not *12/10; make it match the
other allocation code.
2007-03-21 02:04:45 +02:00
Daniel Stone
f34b9a20b0 XKB: Be a tiny bit more conservative with type allocation
Make sure size_types will _always_ be 0 if we don't have any types.
2007-03-21 02:04:44 +02: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
Daniel Stone
9398d62f27 XFree86 input: Add backwards compatibility for motion history
Add the old motion history API back, as a shim around the new mi API.
2007-03-21 00:18:24 +02:00
Daniel Stone
0f75c47e0c xfree86 input: Re-enable DGA support
Re-enable DGA support for relative mouse motion.
2007-03-21 00:12:02 +02:00
Daniel Stone
80d29475b9 mieq: Allow event handlers for arbitrary events to be set
Allow arbitrary events to use mieq by letting custom handlers be set.
2007-03-21 00:10:38 +02:00
Alan Coopersmith
b8df961843 Define XF86PM on Solaris x86 builds now that we have sun_apm.c 2007-03-19 18:03:26 -07: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
Keith Packard
720f302d24 Slow down DDC I2C bus using a RiseFallTime of 20us for old monitors.
This time value makes the bus run slowly enough for even the least reliable
of monitors. Thanks to Pavel Troller for finding the necessary change.
2007-03-17 23:38:53 -07:00
Keith Packard
b5a8a71e64 Remove extra (and wrong) I2C ByteTimeout setting in DDC code.
The DDC code sets the I2C timeouts to VESA standards, except that it had an
extra setting of the ByteTimeout value which was wrong (off by a factor of
50). Removing this should help DDC work on many more monitors. Note that the
Intel driver duplicated these settings, along with the error. Yay for cult
and paste coding.
2007-03-17 23:38:43 -07:00
Keith Packard
2489dae9f7 Correct ref counting of RRMode structures
RRModes are referenced by the resource db, RROutput and RRCrtc structures.
Ensure that the mode reference count is decremented each time a reference is
lost from one of these sources. The missing destroys were in
RRCrtcDestroyResource and RROutputDestroyResource, which only happen at
server reset time, so modes would be unavailable in subsequent server
generations.
2007-03-17 23:38:28 -07:00
Keith Packard
9d0c3b52f2 Eliminate RRModeRec devPrivate field.
The xf86 mode setting code was mis-using this field to try and store a
pointer to a DisplayModeRec, however, each output has its own copy of every
DisplayModeRec leaving the one in in the RRModeRec devPrivate field pointing
at a random DisplayModeRec.

Instead of attempting to rectify this, eliminating the devPrivate entirely
turned out to be very easy; the DDX code now accepts an arbitrary RRModeRec
structure and set that to the hardware, converting it on the fly to a
DisplayModeRec as needed.
(cherry picked from commit 3506b9376c)
2007-03-17 23:34:58 -07:00
Keith Packard
2c93083edd Add support for user-defined modelines in RandR.
The RandR protocol spec has several requests in support of user-defined
modes, but the implementation was stubbed out inside the X server. Fill out
the DIX portion and start on the xf86 DDX portion. It might be necessary to
add more code to the DDX to insert the user-defined modes into the output
mode list.
(cherry picked from commit 63cc2a51ef)

Conflicts:

	randr/randrstr.h

Updated code to work in master with recent security API changes.
2007-03-17 23:20:07 -07:00
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
Keith Packard
3bffb28126 Don't wedge when rotating more than one CRTC.
Rotation block handler was re-registering the rotation damage structure,
creating an infinite loop in the damage code. Track registration of the
damage structure to avoid this.
(cherry picked from commit b14f003b0e)
2007-03-15 19:32:58 -07:00
Keith Packard
9562b6abe1 Allow xf86_reload_cursors during server init.
xf86_reload_cursors is supposed to be called from the crtc mode setting
commit hook; as that happens during server initialization, check for this
case.
(cherry picked from commit 5b77bf2d02)
2007-03-15 19:32:48 -07:00
Eric Anholt
3b71b0f89f Set the RandR version returned, rather than just passing the proto's version. 2007-03-15 13:21:00 -07:00
Matthias Hopf
2fe74ef339 Fix calculations in x86 emulator for the long long case (Andreas Schwab). 2007-03-15 16:56:01 +01:00
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
Keith Packard
ae75019ccf Create driver-independent CRTC-based cursor layer.
This moves most of the cursor management code out of the intel driver and
into the general server code. Of course, the hope is that this code will be
useful for other driver writers as well.

Check out xf86Crtc.h for the usage information, making sure you add the
needed hooks to the crtc funcs structure for your driver.
(cherry picked from commit 4d81c99a46)
2007-03-15 00:02:40 -07:00
Peter Hutterer
c5b07fb717 kdrive: update kdrive to new mi API with additional device argument. Includes
an update of ati_cursor.c and i810_cursor.c
2007-03-14 17:42:30 +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
Alan Hourihane
4bf1b280f7 Set pScreen on context 2007-03-09 14:18:14 +00:00
Jay Estabrook
c366b82bd5 Ensure domain is stripped from the bus ID. 2007-03-09 12:26:55 +00:00
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
Peter Hutterer
4054834965 mi: remove 'register' keywords. 2007-03-09 14:16:23 +10:30
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
Keith Packard
40ae4f246d Remove stale monitor data when output becomes disconnected.
Remove parsed EDID and EDID property from disconnected outputs.
(cherry picked from commit ae9d5aa479)
2007-03-07 20:53:16 -08:00
Eamon Walsh
b5fde366e2 Properly free device devPrivates - memory leak fix. 2007-03-07 12:29:55 -05:00
Adam Jackson
a3d2c5d622 XORG_VERSION_CURRENT, not XF86_VERSION_CURRENT.
If only this was the least wrong thing in this code.
2007-03-07 11:02:47 -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
Keith Packard
e9bfb2b3d7 Add hw/xfree86/docs/README.modes, documenting new mode setting APIs.
This document covers both API and xorg.conf usage of the new mode setting
APIs.
(cherry picked from commit a59c31b0f7)
2007-03-06 23:21:05 -08:00
Keith Packard
72a23d88d7 Add xf86CrtcScreenInit to share initialization across drivers.
xf86CrtcScreenInit performs initialization that needs to happen at
ScreenInit time.
(cherry picked from commit 558a4f5588)
2007-03-06 23:20:59 -08:00
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
Eric Anholt
024bbc7cbb Bug #9931: Fix linear allocations with a non-1-byte granularity.
This was introduced in 83080809f9.  Instead of
aligning the offset, it doubled it.  Results were appropriately spectacular.
2007-03-06 16:20:34 -08:00
Ben Byer
9d94c13759 updated todo list 2007-03-06 11:09:30 -08:00
Ben Byer
81d581e655 Merge branch 'master' of git+ssh://bbyer@git.freedesktop.org/git/xorg/xserver 2007-03-06 10:37:29 -08:00
Ben Byer
a05ffca8dd rewrote event handling, Xquartz now has working mouse and keyboard. use it\! 2007-03-06 10:36:51 -08:00
Drew Parsons
d5aba03fef Xprint: shorten font filename to fit in tar length limit
The length of the Xprint font file NewCenturySchlbk-BoldItalic.pmf
pushes the full path over the traditional 100 character limit for
tarballs (when module version number is included).  Shorten it to
NewCentSchlbk-BoldItal.pmf to get back below the limit and rename
other font files in that family to match.
2007-03-07 00:02:28 +11:00
Ben Byer
3206e92258 moved new event-handling code from X11Application.m to darwinEvents.c in preparation for making all Darwin servers use it 2007-03-06 02:31:59 -08:00
Ben Byer
0ccd1443fd Merge branch 'master' of git+ssh://bbyer@git.freedesktop.org/git/xorg/xserver 2007-03-06 01:04:50 -08:00
Ben Byer
ec1ef8a56d Fixed Darwin's Makefile.am to fix a problem building X11.app 2007-03-06 00:57:23 -08:00
Keith Packard
9b6bb06f13 Allow relative positions to use output names or monitor identifiers.
Previous version used monitor identifiers if present, otherwise output
names. That caused existing working configurations to break when additional
information was added to the configuration file.
(cherry picked from commit 3f5cedf00a)
2007-03-05 23:50:37 -08:00