Commit Graph

6773 Commits

Author SHA1 Message Date
Michel Dänzer
e5271c3747 Set libdrm flags correctly even when only DRI2 is enabled. 2008-11-15 13:27:42 +01:00
Jeremy Huddleston
bc4f804cd8 XQuartz: Actually add glcontextmodes.[hc]
(cherry picked from commit 763195d338)
2008-11-14 15:13:59 -08:00
Ben Byer
aedafbea0e fix compilation on systems that don't have
XP_EVENT_SPACE_CHANGED defined
(cherry picked from commit 6e833e41e2)
2008-11-14 15:11:42 -08:00
Jeremy Huddleston
b078936571 XQuartz: Initial work on readding GLX to the 1.5 server
(cherry picked from commit a186cab6ae)
2008-11-14 15:10:32 -08:00
Jeremy Huddleston
1d7049f8fd Xquartz: Force sending mouse clicks to AppKit if we're over the menu bar
(cherry picked from commit 7dff93ec1a)
2008-11-14 11:10:24 -08:00
Jeremy Huddleston
3c12483264 XQuartz: Made X11Application.m a little more tidy.
(cherry picked from commit 3520386261)
2008-11-14 11:10:15 -08:00
Jeremy Huddleston
e917806fc5 os/connection: TRANS_NOXAUTH bit comparison brainfart fix.
https://bugs.freedesktop.org/show_bug.cgi?id=18524
2008-11-14 10:57:22 -08:00
Fernando Carrijo
17bccff4ce [dix] Remove a duplicate statement.
Signed-off-by: James Cloos <cloos@jhcloos.com>
2008-11-14 12:36:20 -05:00
Alex Deucher
ba4e08244e Merge branch 'master' of git+ssh://agd5f@git.freedesktop.org/git/xorg/./xserver 2008-11-13 15:04:18 -05:00
Alex Deucher
81fd17f5f4 Only add default modes if EDID supports continuous-frequency
When an EDID is present, only add the default mode pool if the
continuous-frequency bit is set in the EDID.  Should fix bugs
like 18512.
2008-11-13 15:00:30 -05:00
Adam Jackson
c232f3d673 xf86TargetExact should try harder if there's only one monitor attached.
If there's no preferred mode, but only one monitor, pick the
biggest mode for its aspect ratio, assuming one exists.
2008-11-13 14:58:21 -05:00
Jeremy Huddleston
5bad5d2abe XQuartz: Fixed XBell() when not using system alert.
(cherry picked from commit aa0e9ab1c7)
2008-11-13 11:34:32 -08:00
Jeremy Huddleston
0fca8588a2 XQuartz: Added more debugging to handoff spew
(cherry picked from commit acefa7e3c8)
2008-11-13 11:34:27 -08:00
George Staplin
47d3821870 XQuartz: GL: Handle the alpha differently when the alpha is equal to GLCAPS_COLOR_BUF_INVALID_VALUE.
This prevents visuals with odd sizes.  The machine I use didn't have
this problem, but it shows up on some others.
(cherry picked from commit ed181382dd)
2008-11-13 11:34:21 -08:00
Alex Deucher
6b501d7cc5 Add missing newline when printing edid info 2008-11-13 13:57:30 -05:00
George Staplin
33edd32702 XQuartz: Disable 2 calls to miSetVisualTypesAndMasks that seem to be unnecessary, and possibly wrong (with regard to masks and bits per RGB).
Use the settings queried from the system in xprScreen.c, rather than those 2 calls.

The 2 calls increased the total number of visuals a great deal (when using GLXEXT),
and not all of the visuals were usable with GLX.  Some of the visuals aren't usable
with GLX still, such as DirectColor, but that seems to be acceptable based on my
understanding of the manual that states "a subset of visuals are made available
for OpenGL rendering."
(cherry picked from commit 373b8a5f32)
2008-11-13 01:19:43 -08:00
Jeremy Huddleston
1523476afa XQuartz: CFBundleShortVersionString needs to conform to X.Y.Z as well... sigh
(cherry picked from commit 54d20f6d33)
2008-11-13 01:19:35 -08:00
George Staplin
1f301a0051 XQuartz: Restore the logic of AppleWMDoReorderWindow to the same as the 1.4 branch.
It was returning inverted values in comparison to the 1.4 branch.  This resulted in
the windows not drawing due to a deep path of: RootlessReorderWindow ->
SCREENREC(pScreen)->imp->DoReorderWindow(winRec) - > xprDoReorderWindow ->
AppleWMDoReorderWindow.
(cherry picked from commit d1d398db76)
2008-11-13 01:18:49 -08:00
Peter Hutterer
f5841e9648 dix: don't store enter/leave and focus semaphores in a devPrivate.
We need them for each window, every time a window is allocated. Storing them
in a devPrivate is the wrong thing to do.

This also removes the unused ENTER_LEAVE_SEMAPHORE_ISSET macro.

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
2008-11-13 17:06:32 +10:00
Peter Hutterer
26f701704b dix: remove duplicate line in EnterLeaveEvent.
Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-11-13 15:06:46 +10:00
Kristian Høgsberg
8ff62ea5ba CopySubBuffer expects GL style coordinates. 2008-11-12 15:21:04 -05:00
Peter Hutterer
d91243beb6 dix: formatting fix. 2008-11-11 14:57:26 +10:00
Peter Hutterer
dde09076c5 dix: remove superfluous variable devgrab
grab == devgrab anyway, this is a leftover from the time when we had two
different grabs per device (core and XI grab).

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-11-11 14:52:54 +10:00
Peter Hutterer
fc3e8bfb82 mi: clean up mieqProcessInputEvents, copy all events before processing.
Copy the EventRec's information into local variables before processing them,
this should make it safer for upcoming threading and also makes it easier to
read.

Simplify the event allocation code from the abyss it was before.

This also fixes a potential bug where a custom handler could scramble the
event before the same -now scrambled- event was then passed through the
master's custom event handler.

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-11-11 14:52:54 +10:00
Fernando Carrijo
31005efb1b input: Remove useless conditional. 2008-11-10 13:23:45 -05:00
James Cloos
24383056d0 Don’t recommend fixing HAL if HAL support is disabled.
As reported in http://bugs.freedesktop.org/show_bug.cgi?id=18438
the server suggests reconfiguring HAL if AllowEmptyInput is enabled
and no input devices are known.

Instead of that notice, if HAL is disabled at configure time,
AllowEmptyInput is enabled in the config and no input devices are
found report those facts and recommend disabling AllowEmptyInput.
2008-11-08 13:11:51 -05:00
James Cloos
b3c7e62664 Remove some null statements.
Remove several doubled statement-terminal semicolons.

Reported by Fernando Carrijo.
2008-11-08 12:21:20 -05:00
Michel Dänzer
21c116219c Fix typos which caused exaCompositeRects() to use an incorrect damage region.
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=18065 .

Also, it can bail if either width or height of the bounding box is <= 0, not
only if both of them are.
2008-11-08 01:25:14 +01:00
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
Julien Cristau
d3d6be4948 mi: Fix infinite loop on regen when swrast_dri.so is missing
The swrast DRI provider gets pushed on the glx provider stack at every
server generation, so the stack turns into a circular list on regen.

X.Org bug#18388 <https://bugs.freedesktop.org/show_bug.cgi?id=18388>
2008-11-07 19:03:32 +01:00
Jeremy Huddleston
f59352881f XQuartz: Make LS parse our version properly... it didn't like our CFBundleVersion
(cherry picked from commit 980df1b4ff)
2008-11-06 14:49:54 -08:00
Alan Coopersmith
b4ca9dc239 When HAL returns a NULL property, print "(null)" instead of a NULL pointer
They've promised to fix Solaris printf soon to check for NULL pointers
instead of segfaulting, but that won't help people on existing releases.
2008-11-05 21:58:30 -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 f527381eea)
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 1e5f63f15e)
2008-11-05 19:23:41 -08:00
Jeremy Huddleston
39e82a9b12 XQuartz: Replace deprecated API usage thanks to Robery Murphy
(cherry picked from commit 71dd052412)
2008-11-05 19:23:36 -08:00
Jeremy Huddleston
b4db46320a XQuartz: version string updated for 2.3.2_beta3
(cherry picked from commit 81bb412857)
2008-11-05 19:23:30 -08:00
Alan Coopersmith
c9051b684b Use OsSignal in Popen/Pclose to avoid SysV signal() stupidity 2008-11-05 18:25:57 -08:00
Alan Coopersmith
d63ea51013 Non-Linux OS'es should default to kbd driver, not now-dead keyboard driver 2008-11-05 14:52:39 -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
Michel Dänzer
a4d62bbf21 AIGLX: Reinstate call to driver texOffsetFinish hook.
It was accidentally lost when factoring out __glXDRIdoReleaseTexImage, so this
is a regression fix and should probably be backported to server-1.5-branch.
2008-11-04 11:27:53 +01:00
Michel Dänzer
27f1ad466c AIGLX: Don't truncate offset returned by driver texOffsetStart hook on 32 bit. 2008-11-04 11:26:03 +01:00
Peter Hutterer
de1a8b68eb xkb: extract the correct device in XkbFilterEvents.
If the event is an XI event, we need to work on the correct device, not on
the VCK.

Adds XIGetDevice(event) function to extract the device from an event.
2008-11-04 16:04:16 +10:30
Peter Hutterer
d972399566 Purge device-based WindowAccess code.
Really, this was a bad idea. It's not security, the UI features that would
have been cool (e.g. clicking through windows) aren't implemented anyway, and
there's nothing you can't achieve just by using plain XI anyway.

Requires inputproto 1.9.99.6.
2008-11-04 16:04:15 +10:30
Peter Hutterer
cbc6f98395 xkb: when faking mouse button events, fake them on the correct devices.
When MouseKeys are activated, keyboard devices may generate fake mouse button
events through XKB. Let's get then running through the appropriate paths, i.e.
as XI events on the correct device.

To make matters more fun, ProcessOtherEvents drops events if the DIX device
state cannot be updated accordingly, i.e. all button events from keyboard
devices.
Hence we need to get the paired MD for the device in XkbDDXFakeDeviceButton,
and post the event through the paired MD (usually the VCP).

Removes now-unused ddxFakeBtn.c.

Note: this patch only half-arsedly fixed button events, motion events are a
more complicated matter.
2008-11-04 16:04:15 +10:30
Peter Hutterer
4971315296 dix: clean up GetPointerEvents and GetKeyboardValuatorEvents.
Split into several functions, remove some stale comments.

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-11-04 16:02:25 +10:30
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
67b7e06c4f XKB: Remove pointless macros
These weren't even being used, which isn't overly surprising, given that
they were already in the struct.

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-11-04 16:01:42 +10:30