Commit Graph

361 Commits

Author SHA1 Message Date
George Staplin 429b4b20d5 XQuartz: GL: Add a branch to prevent a NULL DrawablePtr structure access.
In attach() check for pDraw being NULL, and also print an ErrorF message,
because we eventually want to track down why this is occuring.

It's unclear how this occurs, but as I noted in the 1.4 branch, I believe that
the DrawablePtr/struct _Drawable -> id is the member being accessed that causes
KERN_PROTECTION_FAILURE at 0x0000000000000004

This passes my tests using: env LIBGL_ALWAYS_INDIRECT=1 ./sometest.

I fixed a warning: caused by initializing the screen->base.visuals with the
configs.  It is a ** not a *.  It seems that some other part of GLX will
initialize this for us.
(cherry picked from commit 17f6a261fca6d5856069dce28bb4838261afc6bc)
2008-11-22 11:13:46 -08:00
Jeremy Huddleston 76fcfc4801 XQuartz: GLX: sync up indirect.c to match George's updates in the xorg-server-1.5-apple branch 2008-11-21 20:25:55 -08:00
George Staplin 1a717779b6 XQuartz: GL: remove glcontextmodes.* from the Makefile.am. It has been replaced.
The new replacement is __GLXconfig.
(cherry picked from commit 3bed9b65c807a1aeb662b8042826cbb54280181d)
2008-11-21 20:10:57 -08:00
Jeremy Huddleston ca64b5949d XQuartz: Don't use LS to find X11.app on Tiger.
(cherry picked from commit e62107e55261ef252a2a24dd26a60e5dd295d560)
2008-11-21 11:55:49 -08:00
Jeremy Huddleston 393325f908 XQuartz: spewCallStack is noop on Tiger now...
(cherry picked from commit 56c469a68b92c6cf003802f418ea00bd596a41c3)
2008-11-21 10:59:41 -08:00
Jeremy Huddleston 5d47a5d652 XQuartz: pbproxy: Added some typedefs for types not available on Tiger
(cherry picked from commit 0947aa7911f1de44bfe16e505a757b659c5ab2a8)
2008-11-21 10:59:34 -08:00
Jeremy Huddleston b262788401 XQuartz: More Tiger ifdefs
(cherry picked from commit 803509072f2c039e5cd555c4ac14d672f0e698c5)
2008-11-21 10:59:26 -08:00
Jeremy Huddleston 5107444443 XQuartz: Resurrect the old audio path for Tiger
(cherry picked from commit a61a8d9047e8765faf3892f4f2148c8553fd192c)
2008-11-21 10:59:17 -08:00
Jeremy Huddleston d7ee76f9dd XQuartz: pbproxy: Push the pbproxy Xevent processing into its own thread
and just have the AppKit thread wake it up.
(cherry picked from commit 799715b8f3327c8da59ab45706e85af2d2c438e4)
2008-11-21 10:59:10 -08:00
Jeremy Huddleston c4ec71b405 XQuartz: pbproxy: nuke RCS Id, update header license/copyright
(cherry picked from commit 477c6968a88429bb9c10222a5836bdc936d10ab1)
2008-11-19 10:58:15 -08:00
Jeremy Huddleston 42f330cf9e XQuartz: pbproxy: Remove thread-main.m
it got accidently added and isn't used.
(cherry picked from commit cb6ffce68a2d10022fa92725d2d1837da4b3b89f)
2008-11-19 10:58:06 -08:00
Jeremy Huddleston 03f7a66a1a XQuartz: Don't use TIS on Tiger...
(cherry picked from commit be8ac84c15e7e76c581b9e75cda74139394aa4c7)
2008-11-15 19:52:52 -08:00
Jeremy Huddleston e8112784e8 XQuartz: Integrated xpbproxy into the server.
Added a configure option called --enable-standalone-xpbproxy which is useful for deveoping xpbproxy.
The 'active' switch in preferences just disables the in-server xpbproxy (not this standalone).
(cherry picked from commit 42944936326ef8732f622db9f75b79a92980550d)
2008-11-15 19:52:34 -08:00
Jeremy Huddleston bc4f804cd8 XQuartz: Actually add glcontextmodes.[hc]
(cherry picked from commit 763195d338345e3637d112279bdbe002b6e7791a)
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 6e833e41e2f3a84f7e5164b918737b3975517c12)
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 a186cab6ae82340770c13b37ff5df731ce2a0ceb)
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 7dff93ec1ac92aeaf3b70d5cfe787fa4a28c0dba)
2008-11-14 11:10:24 -08:00
Jeremy Huddleston 3c12483264 XQuartz: Made X11Application.m a little more tidy.
(cherry picked from commit 3520386261b838196a8918e8bee16bdccbc9781d)
2008-11-14 11:10:15 -08:00
Jeremy Huddleston 5bad5d2abe XQuartz: Fixed XBell() when not using system alert.
(cherry picked from commit aa0e9ab1c7a226cdcb3c5e62be159355a290faf8)
2008-11-13 11:34:32 -08:00
Jeremy Huddleston 0fca8588a2 XQuartz: Added more debugging to handoff spew
(cherry picked from commit acefa7e3c8706ffedc052effd50b36ce10e72c22)
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 ed181382ddeb77019577d39b9c06b1cd839e18e4)
2008-11-13 11:34:21 -08: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 373b8a5f32509722e06d8776109e6c3f06645ee0)
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 54d20f6d33c347bcb37a0a8287c2d92fed2b9092)
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 d1d398db762fe7d5720f9b5fafa2bbe8372fceac)
2008-11-13 01:18:49 -08: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
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
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
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
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