Commit Graph

3426 Commits

Author SHA1 Message Date
Luc Verhaegen 59f9fb4b8c XAA PixmapOps: Sync before accessing unwrapped callbacks.
When using any XAAPixmapOps, we call into unknown but freshly
unwrapped callbacks (like fb ones). Unlike the XAA*Fallback calls,
we did so without syncing first, exposing us to all kinds of
synchronisation issues.

I believe that the rendering errors appeared now because *PaintWindow
vanished (e4d11e58), and we just use miPaintWindow instead. This
takes a less direct route to the hw and ends up at
PolyFillRectPixmap, which very often left drawing artifacts.

We now sync accordingly, and no longer get the rendering artifacts i
was methodically reproducing on radeonhd, radeon, unichrome...

Also, in order to allow driver authors to remove extensive syncing
or flushing to hide this issue, create XAA_VERSION_ defines, put
them in xaa.h and bump the patchlevel.

(novell bug #435791)
2008-11-07 19:13:58 +01:00
Julien Cristau 991c88b754 xfree86: xf86SetDepthBpp needs to respect the driver's depth24flags
When setting the depth to 24, leave bpp unset so the logic to pick
a supported value is used instead of ignoring the driver's preference
and forcing 32 bpp.
2008-11-07 19:03:40 +01:00
Jeremy Huddleston f59352881f XQuartz: Make LS parse our version properly... it didn't like our CFBundleVersion
(cherry picked from commit 980df1b4ff7d4dab9dc1462dc086542265b1fb1b)
2008-11-06 14:49:54 -08:00
George Peter Staplin 13d06f5aaf XQuartz: GL: Add capability detection for depth buffers, and multisampling.
GL/capabilities.c: Add handleDepthModes(), and extend
handleRendererDescription() for the various depth and multisampling flags.

Add initialization of the new config options to initConfig().

GL/capabilities.h: Add depth and multisample config members.

GL/visualConfigs.c: Add depth and multisampling support to the visual config
setup.
(cherry picked from commit f527381eea6a8ae6cd791475b2060d21fcf8efb2)
2008-11-05 19:23:48 -08:00
George Peter Staplin 34bb06b292 XQuartz: GL: Work around problems with really deep visuals.
GL/capabilities.c: #if 0 (for now) any capabilities above 8 bits per channel,
because they introduce drawing problems.

GL/indirect.c: Comment out some visual setup code that shouldn't be running, and
actually seemed to cause some problems.  The current visualConfigs.c code seems
to do a reasonable job of setting up visuals for XQuartz.

GL/visualConfigs.c: Make use of the proper visual .class.   Eliminate depth 0.
It seems we really just want 24 for now, and 0 I think was a flaw in the original
code.
(cherry picked from commit 1e5f63f15e13a40a6e69a1505934d10d6990b6a2)
2008-11-05 19:23:41 -08:00
Jeremy Huddleston 39e82a9b12 XQuartz: Replace deprecated API usage thanks to Robery Murphy
(cherry picked from commit 71dd052412400362793f2f0c7c02bf4f4309738c)
2008-11-05 19:23:36 -08:00
Jeremy Huddleston b4db46320a XQuartz: version string updated for 2.3.2_beta3
(cherry picked from commit 81bb4128570b44d779126a8dffcd3c5620747383)
2008-11-05 19:23:30 -08:00
Adam Jackson 446d9443ce linux: Drain the console fd of data when using evdev for keyboards
Works around a silly bug in the kernel that causes wakeup storms after
too many keypresses.  Should fix the kernel bug too, but this at least
keeps the idle wakeup count below 1000/sec.
2008-11-05 11:51:06 -05:00
Adam Jackson 6d21fbf006 kdrive: Bye bye Xvesa 2008-11-05 11:39:46 -05:00
Egbert Eich 9a874a71a7 DDX/RandR: When positioning outputs assume width/height = 0 if no modes exist.
When a user specifies the position of an output for which no modes exist
(for whatever reason) assume that the width and height of this output
is 0. The result will be the same as if this output isn't taken into
consideration at all and thus should be sane. It will prevent a segfault
when trying to determine the width and height of a non-existent mode.
2008-11-04 21:31:27 +01:00
Peter Hutterer 6bb0e0a536 xnest: I'm sure xfree works fine, even if we're 64 bit.
Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-11-04 16:01:42 +10:30
Daniel Stone f4036f6ace Remove XEvIE
It's unmaintained and has been broken for quite a while; MPX finally
smashed it completely.

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-11-04 16:01:07 +10:30
Daniel Stone 8c3753a0b7 A bit of whitespace cleanup in include directives.
It's #include <foo>, not # include <foo>

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-11-04 16:01:07 +10:30
Daniel Stone 889a8dc02b Xi: XINPUT has been mandatory for ages
Ditch all #ifdef XINPUT, since it's always built.

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-11-04 16:01:07 +10:30
Adam Jackson 4cf2f4172a Add xf86MonitorIsHDMI() helper. 2008-11-03 14:35:03 -05:00
Jeremy Huddleston f8af66ddb2 XQuartz: Add option to allow access to the menu in fullscreen mode
(cherry picked from commit 637a9f4bd1ff2b55c870a08ead4940df0f9818e5)
2008-10-31 20:05:39 -07:00
Jeremy Huddleston c5086badf0 XQuartz: LP64 related casting fixes from Bob Murphy
(cherry picked from commit ea71710aaa7166ab510abe70f2dc47942de0ead7)
2008-10-31 19:03:38 -07:00
Jeremy Huddleston ecd55bc859 XQuartz: displayScreenBounds uses quartzEnableRootless rather than !quartzHasRoot
(cherry picked from commit c883a78ef0c2e7e29437881db85d3815a89ab874)
2008-10-31 15:50:06 -07:00
Jeremy Huddleston 9f49f5172d XQuartz: Silence pointer debug spam
(cherry picked from commit 9ca099e928653b5a0fb745186e17bfcc3d74ccc0)
2008-10-31 15:49:52 -07:00
Jeremy Huddleston 93298c7f8f XQuartz: Don't map the menu bar to the screen area.
(cherry picked from commit 1115917ada127a1cd6a8b61efe7fd134e2ea85fd)
2008-10-31 15:49:44 -07:00
Jeremy Huddleston 31907986a6 XQuartz: Fixed Xplugin thread safety issues, so rea-enable background window check
(cherry picked from commit 5fc73b1141eca8b678e54412ca33afa31a76d088)
2008-10-31 15:49:32 -07:00
George Peter Staplin 227d782a1b XQuartz: GL: Mark visuals that are slower than others, due to lack of acceleration.
This is used in libGL to determine a preferred visual.  glxinfo -v will also
report "visualCaveat=Slow" for such visuals.
(cherry picked from commit d5c17f585a240be9f9135975738e62951cde3353)
2008-10-31 15:49:25 -07:00
Jeremy Huddleston 5287602a41 XQuartz: if 0 out a block to avoid thread-unsafe lockups
(cherry picked from commit 60d7359a67900ad4601dbc73e07bcd8c803100a5)
2008-10-31 15:48:24 -07:00
Jeremy Huddleston 93d7cd31c5 XQuartz: Purge the old XQUARTZ_EXPORTS_LAUNCHD_FD option
(cherry picked from commit 490756c7fbe0792c4bd6ae434e7a48e0beffa5c7)
2008-10-31 15:48:15 -07:00
Alan Coopersmith 70e18a3b6b Refactor Solaris mapping code to work with standard shared/vidmem.c
Also merge sun_bios.c into sun_vid.c and upstream Solaris patch to
keep aperture device open, to allow mappings to occur after X server
has given up uid 0.
2008-10-30 21:00:46 -07:00
Peter Hutterer 4ce19b4477 xfree86: fix xf86ScaleAxis once again.
Maybe one day I stop doing stupid patches like
a3a7c12fcf.

So, if X < low, reset to low, and _not_ to high.
If X > high, reset to high, and _not_ to low.
2008-10-30 16:59:43 +10:30
Jeremy Huddleston f12d7ad164 XQuartz: Pass along SIGINT and SIGTERM from the stub to X11.app
(cherry picked from commit 183ca5d68b4f34e248749f304ce140de11bd451b)
2008-10-28 22:01:40 -07:00
George Peter Staplin 273df54685 XQuartz: pbproxy: Fix a bug that prevented nedit CLIPBOARD from being proxied.
It seems that we were calling copy_completed: too soon.  Now we return instead
of falling through to the free_propdata, and copy_completed:.
(cherry picked from commit 5797d5b662817a3369a74a673f4a7c995cde75cf)
2008-10-28 22:01:34 -07:00
George Peter Staplin 313d87341a XQuartz: pbproxy: Work around bugs in some apps that aren't ICCCM compliant.
Eterm ends up setting the type of the property to TARGETS, instead of ATOM.
That's why it wasn't working.
(cherry picked from commit 9be5998ede7427f14dd9597e117b3d6b427ba4e5)
2008-10-28 22:01:29 -07:00
George Peter Staplin 9007d3beea XQuartz: pbproxy: Add code to handle PICT conversion to PNG and JPEG.
This may work, unfortunately I don't have test apps that fail.

The way it works is by using an NSImage class initWithPasteboard:
method, which we then get the TIFFRepresentation of, and convert
to PNG or JPEG.

The TIFFRepresentation uses NSTIFFCompressionNone; which should be
lossless.
(cherry picked from commit 8d048cfa956f4a0860250cc836a6748912b37ad8)
2008-10-28 22:01:22 -07:00
Jeremy Huddleston b742da0b71 XQuartz: pbproxy: fixed blocking
(cherry picked from commit bb330a1b1c480e89727fb75ff5aeb71f4afc5ee3)
2008-10-28 22:00:52 -07:00
Jeremy Huddleston c885110aed Xquartz: pbproxy: Some debugging about unhandled mime types... this will spam up quick, but will be useful for a while...
(cherry picked from commit 3647215310f5a52126661b9ec473dcfeed25b40f)
2008-10-28 22:00:42 -07:00
George Peter Staplin e7c26964ee XQuartz: GL: Fix several error handling mistakes in handleRenderDescriptions, that were leftover before the final code evolved.
(cherry picked from commit fe35a3639081dc78ac6cc4123cde37770f6a39fd)
2008-10-28 22:00:36 -07:00
George Peter Staplin 21ea9d82aa XQuartz: GL: Add feature detection of color sizes, and accum sizes.
This gives us a *lot* more visuals, and they should be more accurate.
Some of the visuals may have been wrong before.  This may enable more
OpenGL programs to behave correctly.

I also suspect libGL needs a little work to handle some of these correctly.
(cherry picked from commit 98a084ce9c455260ecdb5f8eecb67f33dbb53b69)
2008-10-28 22:00:29 -07:00
Peter Hutterer c264826da9 xfree86: If AEI is on, disable "kbd" and "mouse" devices.
This consists of two parts:
In the implicit server layout, ignore those drivers when looking for a core
device.

And after finishing the server layout, run through the list of devices and
remove any that use mouse or kbd.

AEI is mutually exclusive with the kbd and mouse drivers, so pick either - or.

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-10-29 12:07:26 +10:30
Julien Cristau 102c4dac7c x86emu: fix sparse warnings
ops2.c:113:18: warning: Using plain integer as NULL pointer
ops2.c:207:18: warning: Using plain integer as NULL pointer
2008-10-26 13:17:31 +01:00
Julien Cristau ffaaa1a198 xfree86: fix compiler warnings in DoModalias()
The precedence of == is higher than that of &, so that code was
probably buggy.

xf86Init.c: In function 'DoModalias':
xf86Init.c:300: warning: suggest parentheses around comparison in operand of &
xf86Init.c:304: warning: suggest parentheses around comparison in operand of &
xf86Init.c:308: warning: suggest parentheses around comparison in operand of &
2008-10-26 13:13:21 +01:00
Julien Cristau 66fd05acd6 xfree86: Silence compiler warnings about function prototypes
xf86Init.c:136: warning: function declaration isn't a prototype
xf86Init.c:243: warning: function declaration isn't a prototype
xf86Init.c:249: warning: function declaration isn't a prototype
2008-10-26 13:11:41 +01:00
Julien Cristau eadf90aa65 xaa: Fix compiler warning (implicit declaration)
xaaInit.c: In function 'XAAInit':
xaaInit.c:201: warning: implicit declaration of function 'miInitializeCompositeWrapper'
xaaInit.c:201: warning: nested extern declaration of 'miInitializeCompositeWrapper'
2008-10-26 11:44:57 +01:00
Julien Cristau aee514cfb5 xfree86: Fix compiler warnings (implicit declarations)
Add missing includes to fix the following warnings:
xf86DGA.c: In function 'DGAProcessKeyboardEvent':
xf86DGA.c:1050: warning: implicit declaration of function 'UpdateDeviceState'
xf86DGA.c:1050: warning: nested extern declaration of 'UpdateDeviceState'
xf86Xinput.c: In function 'xf86ActivateDevice':
xf86Xinput.c:303: warning: implicit declaration of function 'AssignTypeAndName'
xf86Xinput.c:303: warning: nested extern declaration of 'AssignTypeAndName'
xf86Xinput.c:311: warning: implicit declaration of function 'DeviceIsPointerType'
xf86Xinput.c:311: warning: nested extern declaration of 'DeviceIsPointerType'
xf86Xinput.c:324: warning: implicit declaration of function 'XkbSetExtension'
xf86Xinput.c:324: warning: nested extern declaration of 'XkbSetExtension'
2008-10-26 11:44:11 +01:00
Julien Cristau add946daed Nuke unused variables 2008-10-26 11:44:10 +01:00
Bernhard R. Link 24e863b0eb Bug#16501: autodetection of sbus graphic cards
Add automatic detection of the graphic driver to load for sbus devices.
This allows xorg to work on those devices without a "Device" section.

Debian bug#483942.

Signed-off-by: Julien Cristau <jcristau@debian.org>
2008-10-26 00:26:51 +02:00
Julien Cristau fd97ff1bdd Bug#5851: Document the "Log" option in xorg.conf(5) 2008-10-25 22:59:43 +02:00
Jeremy Huddleston 80b6768536 XQuartz: Do check_xinitrc() later to avoid possible deadlock.
(cherry picked from commit af95174a088dc787d124ec548b1005f5b67c9e8d)
2008-10-23 19:22:36 -07:00
George Peter Staplin d837d4e2af XQuartz: pbproxy: pbproxy.h had invalid macro usage with 2 #else statements, so it wasn't building. Fix the build.
(cherry picked from commit 6bcbb9ba85d95d7df63811a482abc39c4d595366)
2008-10-23 19:22:28 -07:00
George Peter Staplin 6a2693b2f9 XQuartz: Remove the enable_stereo default. We now use feature detection to enable stereo visuals.
We need to revisit the GL/indirect.c changes.  I think indirect.c should
be using the same feature detection and GLX visual config code.  The
indirect changes will require testing...
(cherry picked from commit 49b7a7c6f20ca85d4d624444eb83db2f91344591)
2008-10-23 19:22:16 -07:00
Alan Coopersmith b015a021b2 Allow non-gcc compilers to build xf86Xinput.c 2008-10-23 17:39:30 -07:00
Jeremy Huddleston 28d4f71193 XQuartz: pbproxy: Fix compilation on case-sensitive file systems...
(cherry picked from commit 6622efca216663c99d112c7a226bde691d1f3215)
2008-10-23 16:30:53 -07:00
Jeremy Huddleston 3e999d35c2 XQuartz: Honor the Spaces preference for "When switching to an application, switch to a space with open windows for the application"
(cherry picked from commit bf561a06b2bf60395d26026ac7627d0cb254bc07)
2008-10-23 14:17:19 -07:00
Jeremy Huddleston 75067d12e4 XQuartz: Added missing semicolons to Localizable.strings
(cherry picked from commit e9fe3f36d9529f00daeefa1379cdd6f01a88f410)
2008-10-23 14:17:10 -07:00