Commit Graph

2354 Commits

Author SHA1 Message Date
Dodji Seketeli
47e6dff89e Xephyr-Xv: fix a crash when host X support several ports
* hw/kdrive/ephyr/ephyrvideo.c:
	  (ephyrXVPrivQueryHostAdaptors): properly set
	  port private luke. This fixes a crash when
	  the host Xv supports multiple ports.
	  Make sure number of ports cannot be zero.
2007-10-02 16:55:14 +02:00
Dodji Seketeli
a38ad562a6 make xephyr talk DRI protocol with hostX
* configure.ac,include/dix-config.h.in: define the XEPHYR_DRI macro.
	  define it when --enable-xephyr and --enable-dri are both turned on.
	* hw/kdrive/ephyr/XF86dri.c: copy this from mesa source to enable
	  Xephyr to talk DRI protocol the host X. In mesa, this is used by libGL.so to
	  talk DRI protocol with the server.
	* hw/kdrive/ephyr/ephyr.c: finally initialise the DRI extension
	  in the ephyrInitScreen() function.
	* hw/kdrive/ephyr/ephyrdri.c,ephyrdriext.c: safeguard the compilation
	  using the XEPHYR_DRI macro.
2007-10-02 16:55:14 +02:00
Dodji Seketeli
e4239a4807 Initial dri forwarding big bricks.
* hw/kdrive/ephyr/ephyrdriext.c: added this to implement a DRI extension
	  into Xephyr. Normally the DRI extension is only present in the
	  xfree86 server, but I have ported it to Xephyr. The extension calls
	  functions that declared/defined in ephyrdri.h ephyrdri.c that
	  forwards the DRI calls to the host X. It does not work yet, as this
	  entry is just to put the big bricks in place.
	* hw/kdrive/ephyr/ephyrdri.c,h: declaration & definition of the
	  DRI client API that would hit the hostX server.
	* hw/kdrive/ephyr/GL/internal/dri_interface.h: added this, otherwise
	  inclusion of /usr/include/X11/dri/xf86dri.h won't compile
2007-10-02 16:55:14 +02:00
Dodji Seketeli
e01d3dd98d Support clipping region in PutImage.
* hw/kdrive/ephyr/ephyrhostvideo.c,h:
	  (ephyrHostXVPutImage): make this support clipping region.
	  The clipping region is propagated to host using XSetClipRectangles.
	  This changes the API of ephyrHostXVPutImage.
	* hw/kdrive/ephyr/ephyrvideo.c:
	  (ephyrPutImage): propagate the clipping region to the new
	  ephyrHostXVPutImage() entry point.
2007-10-02 16:55:14 +02:00
Dodji Seketeli
39d3895469 make EphyrXVPriv be a singleton
* hw/kdrive/ephyr/ephyrvideo.c:
	  (ephyrInitVideo) make the EphyrXVPriv object be a
	   singleton instance, otherwise a new object is created at each
	   generation.
2007-10-02 16:55:14 +02:00
Dodji Seketeli
4ed083095a add [Get/Put]Video and [Get/Put]Still support
* hw/kdrive/ephyr/ephyrhostvideo.c,h:
	  (ephyrHostXVAdaptorHasXXX): fix these.
	  (ephyrHostXVAdaptorHasGetVideo): added this
	  (ephyrHostXVAdaptorHasGetStill): ditto
	  (ephyrHostXVPutVideo): added this
	  (ephyrHostXVGetVideo): ditto
	  (ephyrHostXVPutStill): ditto
	  (ephyrHostXVGetStill): ditto
	* hw/kdrive/ephyr/ephyrvideo.c:
	  (ephyrPutVideo): implement this
	  (ephyrGetVideo): ditto
	  (ephyrPutStill): ditto
	  (ephyrGetStill): ditto
	  (ephyrXVPrivSetAdaptorsHooks): advertise GetVideo and GetStill
	  when the host X supports it.
2007-10-02 16:55:14 +02:00
Dodji Seketeli
6f7961bc21 advertise only the hooks implemented by host X
* hw/kdrive/ephyr/ephyrhostvideo.c,h:
          (ephyrHostXVAdaptorHasPutVideo): detect if
          host X has the PutVideo call.
          (ephyrHostXVAdaptorHasPutStill): detect if
          host X has the PutStill call
          (ephyrHostXVAdaptorHasPutImage): detect if
          host X has the PutImage call
        * hw/kdrive/ephyr/ephyrvideo.c:
          (ephyrXVPrivQueryHostAdaptors): make sure to create
          atoms for attribute names otherwise subsequent
          calls to get/set attribute from clients won't work.
          (ephyrXVPrivSetAdaptorsHooks): don't hardwire advertising
          of the PutImage call. Instead, advertise the calls advertised
          by the host.
2007-10-02 16:55:14 +02:00
Dodji Seketeli
1de89239bd don't crash when hostX reports an error.
* hw/kdrive/ephyr/ephyrhostvideo.c,h:
          (ephyrHostXVLogXErrorEvent): add this to
          log X error events. Heavily copied from libx11
          (ephyrHostXVErrorHandler): new x error handler that
          logs the error but does not exits.
          (ephyrHostXVInit): add this to be called at the beginning
          of xvideo lifetime. It sets an xerror handler that does not
          exit.
        * hw/kdrive/ephyr/ephyrvideo.c:
          (ephyrXVPrivIsAttrValueValid): this validates an attribute
          value.
          (ephyrSetPortAttribute): before setting an attribute,
          validate the new value so that we don't send a buggy
          request to host X.
        * hw/kdrive/ephyr/*.c: fix case in ephyrvideo code.
        * hw/kdrive/ephyr/ephyr.c: fix a typo
2007-10-02 16:55:13 +02:00
Dodji Seketeli
207714b60d first implementation of putimage
* hw/kdrive/ephyr/ephyrhostvideo.c,h:
          (EphyrHostXVPutImage): first implementation. does not
          support clipping regions yet.
        * hw/kdrive/ephyr/ephyrvideo.c:
          (DoSimpleClip): clip using a clipping box. Does not
           support regions yet.
          (EphyrPutImage): first implementation.
           Uses a simple clipping rectangle, no region yet.
        * hw/kdrive/ephyr/hostx.c:
          (hostx_get_window): added this to get the main
          window of the host x.
2007-10-02 16:55:13 +02:00
Dodji Seketeli
aa478e09e2 make properties setting/query code work and hopefully complete.
* hw/kdrive/ephyr/ephyrhostvideo.c,h:
         (EphyrHostXVQueryImageAttributes): add this call. It calls
         XvQueryBestSize xserver entry point. It uses the protocol
         level machinery because Xvlib does not expose that entry point
         as a C function.
         (EphyrHostXVQueryBestSize): added this wrapper around XvQueryBestSize().
         (EphyrHostGetAtom, EphyrHostGetAtomName): added this to get
          an atom or atom name from the host server
        * hw/kdrive/ephyr/ephyrvideo.c:
          (EphyrSetPortAttribute): convert the atom into an host server
          server atom before attacking the host server with it, because in
          in its current form, the input atom is only valid in xephyr.
          This fix makes this call work.
          (EphyrGetPortAttribute): ditto.
          (EphyrQueryBestSize): implement this.
          (EphyrQueryImageAttributes): implement this.
2007-10-02 16:55:13 +02:00
Dodji Seketeli
24c837c0be implement setportattribute and getportattribute calls 2007-10-02 16:55:13 +02:00
Dodji Seketeli
b8cd313be4 make xvinfo work
* hw/kdrive/ephyr/ephyrhostvideo.c:
          (EphyrHostXVAdaptorGetVideoFormats): properly get visual class instead of
            returning the visual id.
          (EphyrHostXVQueryEncodings): properly copy the fields because simple casting does
            truncate some fields.
           (EphyrHostAttributesDelete): XFree the whole array instead of trying to free invidial members.
        * hw/kdrive/ephyr/ephyrvideo.c:
          (ephyrInitVideo): fix a typo
          (EphyrXVPrivQueryHostAdaptors): set XvWindowMask mask to adaptors type.
           use host adaptor name. Don't forget to set nImages field.
          (EphyrXVPrivRegisterAdaptors): report an error when KdXVScreenInit() fails.
2007-10-02 16:55:13 +02:00
Dodji Seketeli
aa2fae7b75 misc fixes.
*(EphyrHostXVQueryAdaptors): return the queried adaptors list
        * (EphyrHostXVQueryPortAttributes): return port attributes number
2007-10-02 16:55:13 +02:00
Dodji Seketeli
2bf7f3c223 link and init xv 2007-10-02 16:55:13 +02:00
Dodji Seketeli
66b28532e5 initial commit of xv support work 2007-10-02 16:55:13 +02:00
Dodji Seketeli
1e8f8b36a5 works with no adaptors
Debug the early code to make work when the host has no video adaptors
2007-10-02 16:55:13 +02:00
Dodji Seketeli
50ff2377ca add -verbosity <level> option to command line 2007-10-02 16:55:13 +02:00
Dodji Seketeli
8426eb2433 link and init xv 2007-10-02 16:55:13 +02:00
Dodji Seketeli
50a64c84e1 initial commit of xv support work 2007-10-02 16:45:01 +02:00
Andrew Christan
e5e6514ffa Xephyr: add "multiscreen" suport
* This patch adds multiscreen support to Xephyr. For instance,
	  the command line : "Xephyr :4 -ac -screen 320x240 -screen 640x480"
	  will launch with two "screens" - namely two main windows.
	  The first main window represents a screen that has the number :4.0, with
	  a geometry of 320x240 pixels, and the second one represents a screen
	  that has the number :4.1 with a geometry of 640x480.
	  The command line: "DISPLAY=:4.1 xclock" will launch the xclock program
	  on the second screen, for intance.

	*   this patch was edited by Dodji Seketeli <dodji@openedhand.com> for:
	  - better style compliance with the rest of the Xephyr code
	  - make sure Xephyr could be launched with no -screen option. By
	    default that creates a default screen of 640x480 pixel like before
	  - display full titles on the windows - with insctructions to grab
	    keyboard and mouse - like before.
2007-10-02 13:49:17 +02:00
Peter Hutterer
45ec6cd1fb xfree86: fix DGA to use the correct devices.
DGAStealXXXEvent modified to take in device argument.

The evdev driver only sends one valuator when only one axis changed. We need
to check for DGA either way (xf86PostMotionEventP), otherwise we lose purely
horizontal/vertical movements.

Note that DGA does not do XI events.
2007-10-02 13:19:07 +09:30
Peter Hutterer
122ae65ed9 xfree86: xf86DGA: some cleanup to use the correct devices instead of VCP/VCK. 2007-10-02 10:50:59 +09:30
Peter Hutterer
54ce7436b2 xfree86: update all pointers when calling xf86SwitchMode
Center the frame around the first pointer found and then update all pointers
on the same screen to move to the edges (if necessary).

Note: xf86WarpCursor needs to be modified, is using deprecated
miPointerWarpCursor and will kill the server when called with
inputInfo.pointer.
2007-10-02 10:49:46 +09:30
Peter Hutterer
113011221a Xi, xfree86: Remove leftovers of the XI wrapper code. 2007-10-01 21:42:01 +09:30
Alan Coopersmith
c7ead3a68e xorgcfg needs $(DIX_CFLAGS) for pixman-1 include path 2007-09-27 16:47:32 -07:00
Alan Coopersmith
62a9fb4cda Fix PCI rework build on Solaris (copy what BSD does) 2007-09-27 16:47:32 -07:00
Alan Coopersmith
1d938a80fd Remove unused pciAddrHostToBus functions from ix86Pci.c
Matches linuxPci.c changes made in 8279444a54
Fixes compiler errors:
 "ix86Pci.c", line 194: too many struct/union initializers
 "ix86Pci.c", line 204: too many struct/union initializers
 "ix86Pci.c", line 214: too many struct/union initializers
2007-09-26 19:42:46 -07:00
Dodji Seketeli
aa0325db7e Xephyr: fix compiler warnings
* hw/kdrive/ephyr/ephyr_draw.c:
	  (ephyrDownloadFromScreen),
	  (ephyrUploadToScreen): fix compiler warnings
2007-09-26 15:26:42 +02:00
Peter Hutterer
e2cb851566 xfree86: pass in the XKB event processing proc instead of the XI one.
We need to pass ProcessPointerEvent or ProcessKeyboardEvent to
XkbSetExtension, otherwise we lose the xkb layer.
2007-09-26 18:01:17 +09:30
Peter Hutterer
340911d724 Wrap core event handling through ProcessOtherEvents.
When processing events from the EQ, _always_ call the processInputProc of the
matching device. For XI devices, this proc is wrapped in three layers.
Core event handling is wrapped by XI event handling, which is wrapped by XKB.
A core event now passes through XKB -> XI -> DIX.

This gets rid of a sync'd grab problem: with the previous code, core events
did disappear during a sync'd device grab on account of mieqProcessInputEvents
calling the processInputProc of the VCP/VCK instead of the actual device. This
lead to the event being processed as normal instead of being enqueued for
later replaying.
2007-09-26 15:12:49 +09:30
Eric Anholt
988f446fe0 [EDID] Ignore reserved bits in deciding monitor vs detailed timing descriptor.
Even though they're defined to zero by the spec, we've seen an EDID block
where the (empty) ASCII strings were stuffed in a byte early, leading to the
descriptor being considered a detailed timing instead.
2007-09-24 20:26:31 -07:00
Alex Deucher
e1860f241b Document xf86_crtc_clip_video_helper better. 2007-09-22 17:54:51 -04:00
Alex Deucher
19d30c1c77 Revert "Fix possible crash if Xv window is outside of either crtc"
This reverts commit 9235531410.

This changes ABI.  False means there was a memory failure of some kind,
not that the video shouldn't be displayed
2007-09-22 17:51:27 -04:00
Michel Dänzer
9235531410 Fix possible crash if Xv window is outside of either crtc 2007-09-22 14:25:02 -04:00
Ben Byer
eb82b19aa7 XDarwin: build fix for X11.app 2007-09-20 19:55:48 -07:00
Ben Byer
742d5d6adc XDarwin: Fixes to quartzKeyboard.c to prevent a crash using certain non-US keyboards 2007-09-20 18:03:51 -07:00
Ben Byer
374bd88d10 XDarwin: Merging misc changes from downstream.
The only functional changes in this patch are a removal of use of
Xtrans internals -- replaced by xcb, which doesn't seem to be used
elsewhere in the server?  Pity.
Also, a fix to make all X11 windows pop to the front of the display
when the X11.app icon is clicked -- currently takes two clicks,
not sure why.
2007-09-20 16:51:06 -07:00
Ben Byer
c140d20f4a XDarwin: mass change from using xorg-config.h to dix-config.h cuz we're not using the X.org ddx anymore 2007-09-19 05:58:22 -07:00
Ben Byer
bcb5e3e627 XDARWIN: More fixes to Makefile.am
At least on my system (10.5 with the latest and greatest modules),
Xquartz now builds out of the box.  It doesn't quite work yet, but
hey -- you have to start somewhere. ;)
2007-09-19 04:46:10 -07:00
Ben Byer
5e209b21f3 XNEST: removed obsolete hack to build under Darwin 2007-09-19 03:44:46 -07:00
Ben Byer
378c7ebef4 XVFB: Removed obsolete hack to build on Darwin 2007-09-19 03:43:40 -07:00
Ben Byer
7813392d1c XDarwin: changes to Makefile.am to use new conditionals 2007-09-19 01:53:18 -07:00
Tilman Sauerbeck
a0dafd95e1 Removed hw/xwin/winpntwin.c from Makefile.am.
winpntwin.c was removed in e4d11e58ce.
2007-09-17 17:40:28 +02:00
Eric Anholt
e4d11e58ce Remove the PaintWindow optimization.
This was an attempt to avoid scratch gc creation and validation for paintwin
because that was expensive.  This is not the case in current servers, and the
danger of failure to implement it correctly (as seen in all previous
implementations) is high enough to justify removing it.  No performance
difference detected with x11perf -create -move -resize -circulate on Xvfb.
Leave the screen hooks for PaintWindow* in for now to avoid ABI change.
2007-09-13 00:08:53 +00:00
Brice Goglin
43dc410347 Replace a non-ascii char with the corresponding groff escape in exa.man.pre 2007-09-12 01:43:37 +02:00
Dodji Seketeli
e8c73ac697 Xephyr: fix compilation breakage.
* hw/kdrive/ephyr/ephyr_draw.c:
          (exaDDXDriverInit): pExaScr->hideOffscreenPixmapData does not exist
          anymore, so don't set it.
2007-09-11 00:20:45 +02:00
Ben Byer
0ff273fd1e XDARWIN: fixes to make Xquartz build again 2007-09-09 16:29:08 -07:00
Ben Byer
f8637137ab XDARWIN: build fix for quartz/pseudoramiX.c 2007-09-09 16:29:08 -07:00
Alan Hourihane
84eb7e6224 Fix Xdmx build 2007-09-06 13:37:24 +01:00
Ben Byer
35ec8b89f4 DDX changes for XDarwin
Creating a real DDX section for XDarwin instead of
stuffing it into the XORG section in a half-assed manner.
2007-09-06 05:34:14 -07:00
Peter Hutterer
d627061b48 xfree86: wrap keyboard devices for XKB.
Call ProcessOtherEvents first, then for all keyboard devices let them be
wrapped by XKB. This way all XI events will go through XKB.

Note that the VCK is still not wrapped, so core events will bypass XKB.
2007-09-06 18:57:00 +09:30
Daniel Stone
81c28ffd2b Fix key repeats during VT switch.
Add keyc->postdown, which represents the key state as of the last mieqEnqueue
call, and use it when we need to know the posted state, instead of the
processed state (keyc->down).  Add small functions to getevents.c to query and
modify key state in postdown and use them all through, eliminating previously
broken uses.
2007-09-05 17:46:23 -07:00
Keith Packard
accd71bda6 Deliver correct event when releasing keys on VT switch.
In commit 41bb9fce47, the event delivery loop
for Xinput enabled keyboards was changed and accidentally used the wrong
index variable, causing random events to be delivered when returning from VT
switch.

In addition, in commit aeba855b07,
SIGIO was blocked during delivery of these events, but not for the entire
period the xf86Events array was being used. Block SIGIO for the whole loop
to avoid other event delivery from trashing the key release events.
(cherry picked from commit aa7ed1f5f3)
2007-09-05 14:56:56 -07:00
Ben Byer
8b77dc7e80 XDARWIN: build breakage fix 2007-09-05 14:48:38 -07:00
Ben Byer
ff01e44e33 Merge branch 'master' of ssh://git.freedesktop.org/git/xorg/xserver 2007-09-05 13:56:08 -07:00
Ben Byer
8ba8c16af7 build fixes for XDarwin 2007-09-05 13:46:30 -07:00
Eric Anholt
47300ed2be Fix server version reporting to be the server package version.
Previously, the server version reported by xdpyinfo and Xorg -version would
bear some vague resemblance to a X.Org katamari version, but in the presence
of modularization (and client-server relationships with different katamari
versions on each side) those numbers don't really make sense.  Instead, just
report the package version.

When branching a stable branch, master's version should be immediately updated
to the endpoint of the stable branch plus a snapshot of 1 (for example,
1.4.0.1 after server-1.4-branch).  The stable branch should then be changed to
RC0 at that time (1.3.99.0, for example).

This scheme was partially attempted for server 1.3, but lacked the appropriate
master updates, thus why it had to be revisited now.  While here, we can also
remove a lot of versioning complexity since everything is based on the package
version.
2007-09-05 12:43:28 -07:00
Dodji Seketeli
6c89d1237c Kdrive: unbreak kdrive linking
* configure.ac: re-sort Kdrive libs so that symbols get properly resolved.
          Basically, all some libs are present in both $KDRIVE_LIBS and $XSERVER_LIBS,
          and some libs orders are not correct. So I made sure Kdrive servers don't have
          to link against $KDRIVE_LIBS  *and* $XSERVER_LIBS. They just have to link
          against $KDRIVE_LIBS now.
        * hw/kdrive/*/Makefile.am: update those makefile to reflect the change in configure.ac
2007-09-05 17:46:49 +02:00
Ben Byer
28e48cd8e6 Another pathname fix for event_status_driver.h 2007-09-05 04:43:17 -07:00
Ben Byer
b6c0697fd6 fixed path for event_status_driver.h
(The path currently used is deprecated on Tiger and invalid on Leopard.)
2007-09-05 04:40:03 -07:00
Ademar de Souza Reis Jr
eb6a933dc6 Add xorg.conf man section about catalogue:<dir> FPE
catalogue:<dir> FPEs were introduced in libXfont 1.2.9
2007-09-04 17:20:27 -07:00
Gerte Hoogewerf
d67e210f34 Add stub symbols to make xprint build. 2007-09-04 16:09:38 -07:00
Eric Anholt
f7f79724fd Increase despair by fixing xprint build after my _DEPENDENCIES changes. 2007-09-04 16:08:13 -07:00
Ian Romanick
e89d16be07 Revert part of 529acb1754 because libtool is smart. 2007-09-04 14:49:49 -07:00
Egbert Eich
735da3dcd0 Fixing xf86I2CGetScreenBuses(), now dereferencing the correct pointer. 2007-09-04 16:42:57 +02:00
Egbert Eich
7c5de093d4 Fixing sig11 in xf86I2CGetScreenBuses().
Dereferencing a pointer once too often caused a
sig11 in xf86I2CGetScreenBuses().
2007-09-04 15:15:23 +02:00
Hong Liu
9adea80703 bgPixel (unsigned long) is 64-bit on x86_64, so -1 != 0xffffffff
This patch should fix bug 8080.
2007-09-04 08:48:26 +01:00
Eric Anholt
529acb1754 Fix Xorg build by listing circular dependency libraries twice.
One of these I introduced by listing dix and mi in the same library list to
simplify other servers.  The other had been hacked around using libosandcommon,
which is now gone.
2007-09-02 15:16:01 -07:00
Eric Anholt
c56930e6ca Remove backend.[ch] from neomagic to fix distcheck. 2007-09-02 13:23:18 -07:00
Eric Anholt
a02db0d500 Convert servers to using _DEPENDENCIES to ensure proper rebuilds.
This cleans up server Makefile.ams a little bit, but also means that people
messing with configure.ac need to be careful with whether they put libraries
in the _LIBS or _SYS_LIBS targets.  Hopefully the comment in configure.ac will
clarify the issues.
2007-08-31 13:09:45 -07:00
Alan Hourihane
87495fc706 Allow yres_virtual to be greater for some kernel fbdev drivers.
(temporary fix for older fbdev drivers)
2007-08-30 21:57:41 +01:00
Eric Anholt
d8ab2353cb Remove dead xf86GetPciSizeFromOS and xf86GetPciOffsetFromOS. 2007-08-30 11:26:17 -07:00
Eric Anholt
c2d80529fc Remove the now-dead PciAvoid symbol. 2007-08-30 11:26:17 -07:00
Egbert Eich
1d11e4bc4c Fixing a misleading comment which could suggest a GPL violation.
The author of the int10 code looked at the VBIOS POSTing code
in DOSEMU to get some initial idea on how to POST a VBIOS.
To give credit to the DOSEMU Team for this inspiration a comment
was added to the code which could suggest that code from the
GPLed DOSEMU was directly incorporated into this code.
This patch should clearify the situation.
2007-08-30 14:28:06 +02:00
Eric Anholt
45efe85003 Remove stale changelogs from kdrive. 2007-08-29 16:05:51 -07:00
Eric Anholt
87295b66a9 Bug #9629: Remove badly-licensed neomagic kdrive files.
Licensing issues of these files include:
- They claim to be licensed under the GPL, yet we haven't allowed that in the
  xserver repository in the past.
- They refer the user to the top of the tree for GPL license text, yet it isn't
  there.
- They claim to be derived from the (MIT-licensed) ati kdrive code, yet don't
  follow the licensing terms of those files.
2007-08-29 15:54:32 -07:00
Eric Anholt
adf46b57ce Replace BSD custom PCI code with a stub implementation thanks to pciaccess.
Note that pciaccess doesn't yet have Net/OpenBSD support, but the relevant
code should go there instead of disconnected code in the X Server.

While here, remove the now-disabled INCLUDE_XF86_NO_DOMAIN from the headers,
and un-disable xf8StdAccResFromOS for those OSes without domain support which
will need it.
2007-08-28 10:13:27 -07:00
Eric Anholt
3fe67d23ed Remove the BusAccWindows resource code which is now unused.
This was a bunch of poorly defined resource ranges per OS/platform combination
which were supposed to represent what regions could potentially have resources
allocated into them.
2007-08-27 19:02:41 -07:00
Eric Anholt
9e2112b2b5 Remove unused xf8GetBlock and xf86GetSparse entry points. 2007-08-27 18:50:34 -07:00
Eric Anholt
801c359574 Fix fbdevhwstub for pci-rework. 2007-08-27 15:46:05 -07:00
Eugeniy Meshcheryakov
affda73a1d Xprint: fix handling of TrueType font name
Debian bug #272368
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=272368
In certain locales, some characters from some TrueType fonts were not
appearing in the Xprint postscript output due to the font not being
identified in the postscript output.
2007-08-27 00:41:03 +10:00
Adam Jackson
ae7f71a8b3 Implement core protocol backing store exclusively in terms of Composite.
Composite's automatic redirection is a more general mechanism than the
ad-hoc BS machinery, so it's much prettier to implement the one in terms
of the other.  Composite now wraps ChangeWindowAttributes and activates
automatic redirection for windows with backing store requested.  The old
backing store infrastructure is completely gutted: ABI-visible structures
retain the function pointers, but they never get called, and all the
open-coded conditionals throughout the DIX layer to implement BS are gone.

Note that this is still not a strictly complete implementation of backing
store, since Composite will throw the bits away on unmap and therefore
WhenMapped and Always hints are equivalent.
2007-08-25 15:08:20 -04:00
David Nusinow
bf0883ae50 Fix bug in debugging info related to pci-rework merge 2007-08-25 14:53:17 -04:00
Ian Romanick
4eed88af8b Remove files made obsolete by pci-rework. 2007-08-24 18:07:08 -07:00
Aaron Plattner
1ab4b3e183 Bump video driver ABI for pci-rework. 2007-08-24 16:00:31 -07:00
Ian Romanick
8b6b40b727 Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into pci-rework
Conflicts:

	hw/xfree86/common/xf86.h
	hw/xfree86/common/xf86Init.c
	hw/xfree86/common/xf86pciBus.c
	hw/xfree86/int10/generic.c
	hw/xfree86/int10/helper_exec.c
	hw/xfree86/loader/xf86sym.c
	hw/xfree86/os-support/bus/Pci.c
	hw/xfree86/os-support/bus/Pci.h
	hw/xfree86/os-support/bus/linuxPci.c
	hw/xfree86/os-support/linux/int10/linux.c
2007-08-23 18:19:17 -07:00
Julien Cristau
13949f9972 Get rid of the type1 font module.
It is completely replaced by freetype these days.
2007-08-23 11:27:33 +02:00
Dave Airlie
76bf3cd7b8 randr: fixup crtc and output destroy
if you are moving pointers, you want to move the pointers not just a byte
2007-08-23 16:22:03 +10:00
Alex Deucher
81f8b652d9 Add _X_EXPORT to exported functions in hw/xfree86/modes/*
Also add missing exports to hw/xfree86/loader/xf86sym.c
2007-08-22 19:26:34 -04:00
Adam Jackson
1834cfb447 Fix an error message to not point to @xfree86.org. 2007-08-21 10:44:37 -04:00
Keith Packard
265a633cf1 Screen size changing should leave FB alone when X is inactive.
xf86RandR12ScreenSetSize must protect calls to EnableDisableFBAccess with
suitable vtSema checks to avoid invoking driver code while the X server is
inactive.
2007-08-20 23:24:22 -07:00
Keith Packard
7dc8531548 Ref count cursors used in hw/xfree86/modes code.
The multi-crtc cursor code in hw/xfree86/modes holds a reference to the
current cursor. This reference must be correctly ref counted so the cursor
is not freed out from underneath this code.
2007-08-20 23:24:12 -07:00
Alex Deucher
1f6ddae003 add xf86_crtc_clip_video_helper to xf86sym.c 2007-08-21 00:37:33 -04:00
David Nusinow
c839859d1b Move module defaults from the header to the source file.
This is where they should have been in the first place. All the rest of
the code in the server defines such things in the source files, not the
headers.
2007-08-20 21:09:27 -04:00
Alex Deucher
53c04351c4 move intel crtc xv clipping helper to the xserver
The code is generic and can be used by any overlay-based card when
adding randr 1.2 support.  Tested on radeon.
2007-08-20 19:47:55 -04:00
Julien Cristau
a1fe36b772 xfree86: Fix build on Linux/alpha.
A bunch of CFLAGS had gone missing, so the build failed with errors like:
../../../../../hw/xfree86/os-support/linux/lnx_ev56.c:7:19: error: input.h: No such file or directory
../../../../../hw/xfree86/os-support/linux/lnx_ev56.c:8:24: error: scrnintstr.h: No such file or directory
2007-08-21 00:26:33 +02:00
Blair Sadewitz
65a49f0ca1 Autoconfiguration of wsmouse for NetBSD. 2007-08-19 20:29:22 +02:00
Jeremy C. Reed
be536b79f2 Update for support on NetBSD and DragonFly. From
Joerg Sonnenberger and pkgsrc.
2007-08-16 11:23:28 -05:00
Jeremy C. Reed
1d4bea6106 Add some more support for DragonFly. From Joerg Sonnenberger
and pkgsrc.
2007-08-16 11:20:12 -05:00
Dave Jones
14c13b8d62 Kdrive: fix nasty thinko in TslibEnable() 2007-08-16 09:46:27 +02:00
Alan Coopersmith
026534f945 Update pci.ids to 2007-08-15 snapshot
Remove nvidia ids in extrapci.ids that are now in pci.ids
2007-08-15 16:47:53 -07:00
Peter Hutterer
f367285fd5 Merge branch 'master' into mpx
Conflicts:

	Xi/exevents.c
	dix/devices.c
	dix/getevents.c
	include/dix.h
	mi/mieq.c
2007-08-12 15:31:10 +09:30
Samuel Thibault
03f9da6724 xfree86: Improve default mouse handling on the Hurd
Make /dev/mouse the default device.  This makes Xorg works with empty
or missing InputDevice sections.
2007-08-12 03:08:49 +02:00
Alan Coopersmith
c5741438a3 Only use evdev drivers in Xephyr #ifdef linux 2007-08-10 16:13:55 -07:00
Eric Anholt
ff4bd3addb Fix the swapped decode of the EDID DTD h/v sync polarity fields.
As a result, we can remove the quirks that existed to flip the bits back around
for us.  This is not confirmed in all cases due to lack of bugs containing EDID
blocks associated with the quirks, but is likely true.
2007-08-08 14:39:27 -07:00
Gustavo Pichorim Boiko
2926cf1da7 [PATCH] Allocate the right number of entries for saving crtcs 2007-08-08 12:31:11 -07:00
Tiago Vignatti
ab3f601149 Updates some piece of the dead mouse evdev code under the new hotplug scheme.
I exported the evdev driver to Xephyr server. I'm running it using something
like:
    $ ./hw/kdrive/ephyr/Xephyr :1 -mouse evdev,,device=/dev/input/event4 -keybd \
    evdev,,device=/dev/input/event1,xkbmodel=abnt2,xkblayout=br

It also closes /#5668.
2007-08-07 23:17:32 -03:00
Tiago Vignatti
7d1a749b21 Export device path key options to be called by the command line of server. 2007-08-07 22:59:12 -03:00
Tiago Vignatti
aee3588a4a Update KdUseMsg() for completeness. 2007-08-07 22:49:07 -03:00
Tiago Vignatti
1339e57485 Fix typo. 2007-08-07 04:24:34 -03:00
Tiago Vignatti
d9ee5f3e3a Clean a little bit the code. 2007-08-07 04:22:26 -03:00
Tiago Vignatti
7a5eb3e96b Let xkb options be passed through command line in kdrive servers. I start my
Xephyr using something like:

    ./hw/kdrive/ephyr/Xephyr :1 -fp /usr/share/fonts/X11/misc/ -mouse ephyr -keybd ephyr,,xkblayout=br,xkbmodel=abnt2
2007-08-07 02:16:44 -03:00
Tiago Vignatti
955d5f6c0d When we call Xephyr with '-pointer' a new pointer is added inside the server
and the Xephyr virtual mouse keeps alive. With this patch the semantic changes
turning '-pointer' && 'Xephyr virtual mouse' always false.

Now we can open a device pointer and pass its options in Xephyr's command line
without having other pointer unused.
2007-08-07 01:39:29 -03:00
Roland "Test-tools" Bär
f6aa2200f2 Probable off by one buffer overflow in .../xorgconfig/xorgconfig.c
X.Org Bug #11858 <http://bugs.freedesktop.org/show_bug.cgi?id=11858>
Patch #11005 <http://bugs.freedesktop.org/attachment.cgi?id=11005>
2007-08-06 12:37:52 -07:00
Dave Airlie
e717eb82dc xserver: stop bcopy from going really slow
The outport is most likely unnecessary on any currently used hardware,
the byte copy is necessary from what I know on IA64 and friends so leave it.

Add a new API entry point which lets a driver select the old behaviour if
such a needs is ever found.

This gives me ~20% speed up on startup on 945 hardware.
2007-08-05 09:51:36 +10:00
Tiago Vignatti
600ef07113 Fix kdrive command line parser. 2007-08-03 15:33:41 -03:00
Arkadiusz Miskiewicz
f3955c0a02 XFree86: xf1bpp: distclean generated files as well
Make sure we clean up after ourselves: not sure why distcheck didn't flag
this one.
2007-08-01 21:05:04 +03:00
Daniel Stone
43e71a5450 XFree86: xf1bpp: Fix previous build system commit
Amateur error.
2007-08-01 08:16:35 +03:00
Daniel Stone
505ec436af XFree86: Properly clean up after ourselves
CLEAN is not a useful variable.  CLEANFILES/DISTCLEANFILES, on the other hand,
are useful variables.
2007-08-01 08:11:08 +03:00
Daniel Drake
cacbdf18ee Remove duplicated licenses
Some files had two copies of the same license.
2007-08-01 08:08:37 +03:00
Arkadiusz Miskiewicz
7fa5838572 XFree86: xf1bpp: Fix parallel build
One of the constructs wasn't parallel-build safe: fix that.
2007-08-01 08:01:28 +03:00
Daniel Stone
18ab4d5594 Darwin: Remove missing file
Xserver.m is missing and still hasn't been added, so just remove it for now.
2007-08-01 07:27:53 +03:00
Daniel Stone
0e0174d45e XFree86: Allow disabling of HAL
If NoAutoAddDevices is given as a server flag, then no devices will be added
from HAL events at all.  If NoAutoEnableDevices is given, then the devices will
be added (and the DevicePresenceNotify sent), but not enabled, thus leaving
policy up to the client.
2007-08-01 03:33:06 +03:00
Daniel Stone
cd8e99e56e Input: Don't enable devices when we open them
Thanks to Xi's braindead design, it's otherwise impossible to query input
devices without enabling them.  Hurrah.
2007-08-01 03:33:06 +03:00
Daniel Stone
89f628394f XFree86: Input: Fix whitespace 2007-08-01 03:33:05 +03:00
Daniel Stone
a93033b0bc XFree86: Module: Bump input version
config_info changes the size (and ordering) of DeviceIntRec, so bump the
input major.
2007-08-01 01:53:31 +03:00
Daniel Stone
1150969b82 Convert all my license statements to the standard form
Convert all my license statements to the standard, accepted form:
cf. <20070717142307.GD13478@fooishbar.org>
    http://lists.freedesktop.org/archives/xorg/2007-July/026451.html

keithp's license on configure.ac changed with his verbal permission.
2007-08-01 01:53:31 +03:00
Daniel Stone
7c9e8fd56e Input: Allow enabling and disabling of devices
Add DEVICE_ENABLE to KDrive and XFree86 to allow us to enable and disable
devices on the fly.
2007-08-01 01:53:31 +03:00
Daniel Stone
4d3379d418 Fonts: Fix builtin fonts
Make sure the font path is always 'built-ins' when we use built-in fonts,
rather than having it as a fixed path for a while, then clobbering it
halfway through startup.
2007-08-01 01:53:31 +03:00
Dave Airlie
722d73a0ef Revert "Fix RandR 1.2 conversion of two colour to ARGB cursor on MSB first platforms."
This reverts commit 0f057ebb27.

This screws my cursor up just starting a bare X server on Intel,
I get the X more like <> than ><..
2007-07-31 10:34:56 +10:00
Adam Jackson
f62beb6f36 Remove all trace of Option "BiosLocation".
This code was deeply dangerous.  If anyone actually had a use for this code,
we should find a better way of doing it.
2007-07-27 13:24:38 -04:00
Kristian Høgsberg
50cb6c7e44 Don't map the front buffer in libdri if the ddx driver doesn't set the size.
This lets drivers map the front buffer themselves
by setting dontMapFramebuffer.
2007-07-27 09:55:27 -07:00
Aaron Plattner
cec793ef7a Include picturestr.h in xf86Crtc.h to pick up definition of PictTransform. 2007-07-26 11:49:46 -07:00
Brice Goglin
eba2be448b Minor fixes in cvt and gtf manpages
Reported by "A. Costa" <agcosta@gis.net> in
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=432065
2007-07-25 20:53:45 +02:00
Michel Dänzer
0f057ebb27 Fix RandR 1.2 conversion of two colour to ARGB cursor on MSB first platforms.
Doesn't seem necessary to do anything here...
2007-07-25 17:04:04 +02:00
Gustavo Pichorim Boiko
5b424b562e Set the crtc before the output change is notified
Set the new randr crtc of the output before the output change notification is
delivered to the clients.
Remove RROutputSetCrtc as it is not really necessary. All we have to do is set
the output's crtc on RRCrtcNotify
2007-07-23 14:47:45 -07:00
Julien Cristau
0f91abd5c6 Fix alpha build failures
Don't include <asm/pci.h> in os-support/linux/lnx_axp.c, use "lnx.h" and
<unistd.h> instead
2007-07-19 20:37:26 -04:00
Keith Packard
dc9c519628 Make PreferredMode option in config file override EDID mode preferences.
When the PreferredMode option is selected in the config file, remove the
M_T_PREFERRED bit from all other preferred modes to force the config file
mode to be selected.
2007-07-19 13:31:07 -07:00
Keith Packard
73a93c5a6b Query modes on disabled (but not ignored) outputs.
Code that disabled mode detection on disabled outputs would confuse
applications by listing said outputs as connected but without any modes.
This makes the disabled state in the config file affect only the initial
configuration and not subsequent modifications by RandR.
2007-07-19 13:31:00 -07:00
Keith Packard
9fc36a391c Make pending property changes trigger mode setting.
The DDX code was ignoring pending properties for computing when mode setting
was required. This meant that configurations differing only in property
values would not cause the mode to be set.
2007-07-19 13:30:51 -07:00
Adam Jackson
21bbd7d64b Delete some pre-dlloader debugging scaffolding.
If your loader is as bad as elfloader, then it makes sense for the
server to have some stubs for you to assign to / break on.  However it
is no longer 1996.
2007-07-18 15:45:11 -04:00
Adam Jackson
1f71f0c057 Remove (long-)deprecated xf86EnablePciBusMaster. 2007-07-18 15:44:45 -04:00
Adam Jackson
0a63d874e9 Always normalize the module name. 2007-07-18 15:44:45 -04:00
Adam Jackson
9a1c6afd12 Remove dead code for screen crossing. 2007-07-18 15:44:44 -04:00
Adam Jackson
8ca2fe8914 Delete dead module test code. 2007-07-18 15:44:44 -04:00
Adam Jackson
e2413cc7ca Remove MEMDEBUG
This existed (but may not have worked) in the monolith, but is gone now.
2007-07-18 15:43:40 -04:00
Adam Jackson
d1d65a8415 Dead ifdefs for BITMAP_SCANLINE_UNIT == 64
This appears to be a legacy of cfb24 not being smart enough to deal with this
case.  But since cfb24 unexists, die die die.
2007-07-18 15:42:30 -04:00
Adam Jackson
cbe74394a5 Nuke dead X -configure code. 2007-07-18 15:39:44 -04:00
Alan Coopersmith
bbe7ce10fa Update pci.ids to 2007-07-16 snapshot
Remove nvidia ids in extrapci.ids that are now in pci.ids
Add nvidia ids to extrapci.ids that are in xf86-video-nv but not pci.ids
2007-07-16 17:25:59 -07:00
Keith Packard
ac979c1651 MakeAtom needs length without trailing NUL. sizeof("string") includes NUL.
I made a mistake in some new code using MakeAtom, passing the size of the
string instead of the length of the string. Figuring there might be other
such mistakes, I reviewed the server code and found four bugs of the same
form.
2007-07-14 12:13:17 -07:00