Commit Graph

4381 Commits

Author SHA1 Message Date
Peter Hutterer
204f2dc89e include: add "isMaster" field to DeviceIntRec.
Set to TRUE for master devices.

Also fixing up comment for paired field in spriteInfo, will be set
bidirectional from now on.
2007-10-16 11:19:09 +09:30
Peter Hutterer
bd7d5255ce dix: add AttachDevice, needed to attach a slave device to a master device.
For now, we don't allow attaching slaves to other slaves, and we don't allow
pairing slaves with other slaves.
Pairing is for master keyboard->master pointer only.
Attaching is for slave device->master device only.
2007-10-16 11:18:31 +09:30
Peter Hutterer
be1565f6b8 dix: Set core devices to ProcessOtherEvents, set sendCore and XKB.
Even the virtual core devices should send through ProcessOtherEvents.
2007-10-16 11:05:34 +09:30
Peter Hutterer
ce9bf9a191 include: add "master" field to DeviceIntRec.
"master" points to the device this device is attached to. Event sent by the
device will also be routed through the master.
master and spriteOwner are mutually exclusive.
2007-10-16 11:05:23 +09:30
Kristian Høgsberg
8b5078b7d9 Fix byte swapping for GetFBConfigs. 2007-10-15 13:11:30 -04:00
George Sapountzis
c922d2eebe glx: drop duplicate GetDrawableAttributesSGIX declarations.
They are officially autogenerated in indirect_dispatch.h now.
2007-10-15 11:32:08 +03:00
Ben Byer
3d4eb17b38 mass change from #ifdef i386 to #ifdef __i386__ to conform to ANSI 2007-10-14 18:07:03 -07:00
Kristian Høgsberg
ec0fc012e9 Fix GLX byteswapping. 2007-10-14 14:59:12 -04:00
Kristian Høgsberg
927757e102 Merge branch 'master' of git://git.freedesktop.org/git/xorg/xserver 2007-10-12 19:28:39 -04:00
Kristian Høgsberg
ccda4b66bd Implement ChangeDrawableAttributes so we can support GLX_EVENT_MASK.
We never need to actually send out the clobber event, so this should be
sufficient for GLX 1.3.
2007-10-12 19:15:05 -04:00
Kristian Høgsberg
695eb8b2e8 Implement GLX pbuffers. 2007-10-12 19:12:26 -04:00
Kristian Høgsberg
516c181f57 Add dispatching for GLX_SGIX_pbuffer. 2007-10-12 18:48:38 -04:00
Kristian Høgsberg
d7ded953c4 Implment GLXPixmaps. 2007-10-12 18:26:55 -04:00
Kristian Høgsberg
2b0847c7aa Implement damage reporting for AIGLX. 2007-10-12 16:19:19 -04:00
Kristian Høgsberg
600028305c Move hyperpipe and swapbarrier extension funcs to screen private struct.
This gets rid of a couple more global arrays and gets the two extensions
more in line with the general extension mechanism.
2007-10-12 16:18:23 -04:00
Kristian Høgsberg
781515bb63 Convert GLX module to use screen private indexes like everything else. 2007-10-12 16:18:19 -04:00
Kristian Høgsberg
72a3d68a2f Update the AIGLX DRI loader to use the new DRI interface.
This lets us drop a bunch of workarounds and use the new DRI extension
mechanism.
2007-10-12 15:51:47 -04:00
Matthias Hopf
17ffc34ad5 Drivers include miscstruct.h which requires pixman.h. 2007-10-12 15:33:31 +02:00
David Nusinow
eaf0e2a21c Fix another compiler warning 2007-10-11 22:31:24 -04:00
David Nusinow
a5089af726 Fix a warning about the control logic in xchomp() 2007-10-11 22:24:31 -04:00
David Nusinow
cdf29ff45a Remove some unused variables 2007-10-11 22:23:34 -04:00
David Nusinow
3367091f7f Separate choosing driver from the file-based implementation
This clears the implementation out of the way to prepare for development
of a symbol-based resolution scheme
2007-10-11 22:21:38 -04:00
David Nusinow
3aa41bcb82 Remove obsolete error message define from parser 2007-10-11 21:29:13 -04:00
David Nusinow
e3e1222111 Don't bother validating the Device section of the conf file
All the previous tests can now be recovered from if not specified.
2007-10-11 21:27:07 -04:00
David Nusinow
28ef7f5941 Re-enable validation of the screen section of xorg.conf
This also fixes a problem where the server can't find the device section
when it is specified in the screen section.
2007-10-11 20:56:46 -04:00
David Nusinow
ea2d4dc468 When there's no xorg.conf, use the video driver autoloading function 2007-10-11 20:26:02 -04:00
Eric Anholt
fc092334ac Bug #10304,12784,11603: Add quirks for several physical size issues.
A lot of EDID writers apparently end up stuffing centimeters (like the
maximum image size field) into the detailed timings, instead of millimeters.
Some of them only get it wrong in one direction.  Also, add a quirk to let
us mark the largest 75hz mode as preferred, which will often be used for
EDID 1.0 CRTs.
2007-10-11 16:55:44 -07:00
Matthias Hopf
45cc03726b Make mode checking more tolerant like in pre-RandR times. 2007-10-11 18:59:39 +02:00
David Nusinow
8825d36a38 Allow the user to not have a screen section
If none is present, a default one will be created. This will be attached
to either the first device section in the xorg.conf (allowing you to
specify something like using EXA without having a screen section) or a
default screen section if none is present in the file.
2007-10-09 22:49:07 -04:00
David Nusinow
8665cf3327 Don't require that the screen explicitly attach the device section
This will allow the screen to not explicitly have a device section. If
this is the case and there is a device section in the xorg.conf, the first
one will be used. If there is no device section at all, a default one will
be created that loads the automatically determined module.
2007-10-09 22:45:15 -04:00
David Nusinow
37898b824f Use the best guess heuristic as a fallback for autoloading
This prevents breaking the current behavior
2007-10-09 22:13:15 -04:00
David Nusinow
847fbbf4d2 Fix autoloading of drivers for pci-rework 2007-10-09 22:13:15 -04:00
David Nusinow
6033d8150b First pass at improved video driver autoloading
This is what we're currently shipping in Debian. Enables the ability for
drivers to ship a text file listing PCI ID's they support, and have the
server read them on startup when no driver is specified. This works, but
isn't the final solution.
2007-10-09 22:13:15 -04:00
David Nusinow
81d7b81146 Load intel instead of i810 when autoconfiguring 2007-10-09 22:13:15 -04:00
Alan Coopersmith
fdef7be5c8 Sun bug 6589829: include zoneid of shm segment in access policy for MIT-SHM
<http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6589829>
<http://www.opensolaris.org/os/community/arc/caselog/2007/500/>
2007-10-09 18:44:51 -07:00
Christian Weisgerber
49c8285e38 FreeBSD/alpha server build requires libio (missed in modularization). 2007-10-09 15:25:16 -07:00
Peter Hutterer
042e16458b dix: change a few inputInfo.keyboard over to PickKeyboard() 2007-10-09 23:07:51 +09:30
Dodji Seketeli
6aab6a6e2a EXA: dude, don't validation driver hooks twice ! 2007-10-08 13:25:38 +02:00
Peter Hutterer
d42909b23a dix: when disabling a device, make sure all paired devices are re-paired.
We re-pair them with the VCP, not a real device! If we would do otherwise,
somebody may change our keyboard focus and thus get us typing where we don't
want to type.
2007-10-05 13:04:10 +09:30
Peter Hutterer
ff2351246d dix: When pairing, only check for access right if client is set.
If the pairing client is not set, then the pairing is initiated internally
(e.g. when a new keyboard device is configured). In this case we _must_ pair
regardless of who is the pairing client.
2007-10-05 12:19:40 +09:30
Dodji Seketeli
4611f9568c updated from 'master' 2007-10-04 13:09:06 +02:00
Dodji Seketeli
ab11bad547 Xephyr: remove a potential crasher
* hw/kdrive/ephyr/hostx.c:
	  (hostx_has_dri): be more defensive.
2007-10-04 13:05:29 +02:00
Dodji Seketeli
06c8977966 Xephyr: better handling of the -nodri option
* hw/kdrive/ephyr/ephyr.c:
          (ephyrInitScreen): try and detect when the host has no
          DRI support. In that case, switch to the -nodri behaviour.
          When in the -nodri case, make sure not to skip glx visual
          initialisation.
2007-10-04 13:01:24 +02:00
Dodji Seketeli
ea94f59e9b Xephyr: don't disable glx visual init by default
* hw/kdrive/ephyr/ephyrinit.c:
          (ddxProcessArgument): disabling visual init here
          is bad because it gets disabled even when we want
          to use software GL, leading to Xephyr :1 -nodri
          crashing in mesa.
2007-10-04 12:54:26 +02:00
Dodji Seketeli
a7f210e6fc Xephyr: fix a compiler warning 2007-10-04 12:51:08 +02:00
Dodji Seketeli
5d6eac1251 Xephyr: remove an unused variable 2007-10-04 12:47:05 +02:00
Dodji Seketeli
8018733c39 Xephyr: better compilation without GLX
* hw/kdrive/ephyr/ephyrinit.c: protect GLX related code with GLXEXT
	  macro
2007-10-04 12:06:19 +02:00
Michel Dänzer
3549a12823 EXA: Disable 1x1 pixmap fill optimization for drivers that handle pixmaps.
This reverts commit 1365aeff54.

It defeated the optimization for drivers that don't provide a CreatePixmap
hook. The optimization makes no sense for drivers that do anyway, so disable
it for them completely.
2007-10-04 11:44:03 +02:00
Dodji Seketeli
604ebb5a6d Merge Xephyr-XV/GL stuff into master 2007-10-03 16:14:08 +02:00
Dodji Seketeli
4ba76a7e2b Xephyr: port XV/GL stuff of the new multiscreen architecture
We can now launch GL or XV apps in any of the
        Xephyr screens we want.

	* hw/kdrive/ephyr/hostx.c,h:
	 (hostx_get_window):
	 (hostx_create_window): make these functions be screen
	 number aware.
	* hw/kdrive/ephyr/XF86dri.c : fix some compiler warnings.
	* hw/kdrive/ephyr/ephyrdri.c:
	 (ephyrDRIQueryDirectRenderingCapable),
	 (ephyrDRIOpenConnection),
	 (ephyrDRIAuthConnection),
	 (ephyrDRICloseConnection),
	 (ephyrDRIGetClientDriverName),
	 (ephyrDRICreateContext),
	 (ephyrDRIDestroyContext),
	 (ephyrDRICreateDrawable),
	 (ephyrDRIGetDrawableInfo),
	 (ephyrDRIGetDeviceInfo): in all those functions, don't forward
	 the screen number we receive - from the client - to the host X.
	 We (Xephyr) are always targetting the same X display screen, which is
	 the one Xephyr got launched against. So we enforce that in the code.
	* hw/kdrive/ephyr/ephyrdriext.c:
	 (EphyrMirrorHostVisuals): make this duplicate the visuals of the host X
	  default screen into a given Xephyr screen. This way we have a chance
	  to update the visuals of all Xephyr screen to make them mirror those
	  of the host X.
	 (many other places): specify screen number where required by the api
	 change in hostx.h.
	* hw/kdrive/ephyr/ephyrglxext.c: specify screen number where required
	 by the api change in hostx.h
	* hw/kdrive/ephyr/ephyrhostglx.c: don't forward the screen number we
	  receive - from the client - to the host X.
	  We (Xephyr) are always targetting the same
	  X display screen, which is
	 the one Xephyr got launched against. So we enforce that in the code.
	* hw/kdrive/ephyr/ephyrhostvideo.c,h: take in account the screen number received
	  from the client app. This is useful to know on which Xephyr screen we
	  need to display video stuff.
	* hw/kdrive/ephyr/ephyrvideo.c: update this to reflect the API change
	  in hw/kdrive/ephyr/ephyrhostvideo.h.
	  (ephyrSetPortAttribute): when parameters are not valid
	   - they exceed their validity range - send them to the host anyway
	   and do not return an error to clients.
	  Some host expose buggy validity range, so rejecting client for that
	  is too harsh.
2007-10-03 13:03:34 +02:00