Commit Graph

451 Commits

Author SHA1 Message Date
Jeremy Huddleston daa9727a02 XQuartz: Implement SendPSN for AppleWM
(cherry picked from commit 779e9fdc2de9bfebc5f0a4c9d5f42e389fdd8593)
2009-03-04 13:39:43 -08:00
Jeremy Huddleston 7907b37d96 XQuartz: Don't erase the mode_switch+keysym if it's the same as shift+keysym
(cherry picked from commit 3e2427e6e9675dd655c8ad328b82e12191b064f2)
2009-02-26 21:26:01 -08:00
Jeremy Huddleston d6976e1436 XQuartz: Re-enable support for capslock
(cherry picked from commit 4901b8147e593d26d7a31a9b73a201254b948916)
2009-02-24 23:14:01 -08:00
Jeremy Huddleston 4b63f88b0a XQuartz: Comment out the background pointer interaction that seems to be causing CPU spinning on some configurations
(cherry picked from commit 1d479fa4f3bca9cbd81808a6c87582422fd2a257)
2009-02-24 22:22:03 -08:00
Jeremy Huddleston 9531b96470 XQuartz: DefineInitialRootWindow is gone 2009-02-22 00:41:52 -08:00
Jeremy Huddleston c7c50157b5 XQuartz: quartzKeyboard compile fixes for recent XKB Changes
Seems we're less divorced from XKB than we'd like for now... hopefully not having any rules installed will still let us override things the way we want to...
2009-02-22 00:29:48 -08:00
George Staplin 61abf3189f XQuartz: GL: Change from xalloc to xcalloc to potentially avoid
uninitialized data in the __GLXAquaContext.
(cherry picked from commit d3120241f9f48d21f9a6ecfb848434a4a0270855)
2009-02-21 23:35:26 -08:00
George Staplin 5587f9b771 XQuartz: GL: Fix a bug with an uninitialized GLX data structure.
This was causing a crash randomly, due to random memory contents.
Use xcalloc to prevent this in the future, due to future changes or mistakes.

Set the drawableType to include GLX_PIXMAP_BIT and GLX_PBUFFER_BIT.
The new libGL supports these.

Set the max Pbuffer width/height, based on the results of a test program.
We may someday want to revisit this depending on what users need, so that
we create a CGLContextObj, make it current, and call glGetIntegerv to
gather the information at runtime.
(cherry picked from commit c7e338330943e0d03a99328c740540d03f018d20)
2009-02-21 23:35:22 -08:00
George Staplin 372977354c XQuartz: Fix the new ProcAppleDRIDestroyPixmap code REQUEST_SIZE_MATCH.
It had a copy and paste mistake that I didn't notice. :/
It was using the CreatePixmapReq.

Also add a missing B16 to the end of the length for the DestroyPixmapReq struct.

Now the AppleDRIDestroyPixmap request seem to work.
(cherry picked from commit 295fe25bd8fa2d141291a9d9b6ef7b75fcccb4dd)
2009-02-20 11:54:45 -08:00
Jeremy Huddleston 67faf41b3f XQuartz: Don't need GlxSetVisualConfig any more
Fixes build failure resulting from 516f8e2cad1311a09764e2633644188d1e3c31bb
(cherry picked from commit 066b17028a35956a089815716e38571f305469c5)
2009-02-17 23:27:08 -08:00
George Staplin bac13e54b1 XQuartz: Add driWrap.h that I missed in the last commit.
This should complete the GLXPixmap commits for now.
(cherry picked from commit 7e99b55651bf7f6275bb227d02f203fb885a67a2)
2009-02-16 21:42:54 -08:00
George Staplin 95052caa2c XQuartz: Add support for GLXPixmaps to the AppleDRI.
This involved wrapping some GCOps to get the proper behavior
when using X11 raster ops mixed with OpenGL (see driWrap.c).

This extends the AppleDRI protocol with create and destroy pixmap
functions.

The dri.c code has been extended quite a bit to enable this, and
to initialize the wrapping of CreateGC for GCOps.

This has been tested with tests/glxpixmap and proven to work with
the new libGL.  Existing applications seem to work fine too. Redraws
all appear to be correct.

There may be some bugs lurking that I haven't found yet.  I plan
to drive them out by extending the libGL test suite.
(cherry picked from commit 630518766b01022c49fe3a9e7d501808f71b06e2)
2009-02-16 21:42:45 -08:00
George Staplin d229ba7068 XQuartz: xpr: The dri.c code for pixmaps was wrong in several ways. They weren't
being exported correctly by Xplugin.

This should fix a bug with the surface for a window, when an export fails.
Before the export could fail and leave behind an invalid (freed) pointer in the dix privates.

I have an idea of how to fix the GLXPixmaps now without using CGLSetOffScreen.

This work is a step towards that.  The Xplugin will need a small patch to fix an
issue that this change brought forth.
(cherry picked from commit 58c4116c47543b5e30c2232e7bee8efc0b9be176)
2009-02-12 15:47:13 -08:00
Jeremy Huddleston b17d6bed97 XQuartz: Fix copyright info in Info.plist to be prettier when viewed in Finder
(cherry picked from commit 8b607c9c507a68a6abda63831d227d0f8947028c)
2009-02-12 15:36:01 -08:00
Jeremy Huddleston 6869efae74 XQuartz: Accept bundle version 2.1.6 to work with our startup method
(cherry picked from commit 7f2966557374cb5ea22bc7b73d5ca04891eb5e78)
2009-02-03 10:04:40 -08:00
Jeremy Huddleston f5c7f8a3ab XQuartz: GLX: Fix accidental exclusion of glBlitFramebufferEXT on Leopard
(cherry picked from commit 8620579483789ae9ac1b68dbefe32b70011386de)
2009-02-02 12:36:01 -08:00
Jeremy Huddleston e2b4d3d4a1 XQuartz: GLX: OpenGL.framework on Tiger doesn't have glBlitFramebufferEXT
(cherry picked from commit e01662cadcaa4052e3a5aa82cbaed00a2d0220e0)
2009-02-01 15:13:40 -08:00
George Staplin b137a0cdb1 XQuartz: GL: indirect.c changes to fix the build with newer OpenGL frameworks.
(cherry picked from commit 143224405ba74929c702a95de52b56df140b0d1b)
2009-01-26 10:28:03 -08:00
Jeremy Huddleston 34b896e50f XQuartz: SnowLeopard: Help system book name changed in 10.6
(cherry picked from commit b57cb05c69acbedb00a97234099ea104309aa2cb)
2009-01-25 21:26:04 -08:00
Daniel Stone f06a9d2e05 Input: Clean up keymap change notifications
Keyboard map notifications are always generated from within XKB code,
which also takes care of copying the keysyms, etc.  If you need to
mangle the keymap yourself, generate a new core keymap/modmap, and pass
it to XkbApplyMappingChange.

SendMappingNotify is renamed to SendPointerMappingNotify (and ditto its
Device variants), which still only _sends_ the notifications, as opposed
to also doing the copying a la XkbApplyMappingChange.

Also have the modmap change code traverse the device hierachy, rather
than just going off the core keyboard.

Signed-off-by: Daniel Stone <daniel@fooishbar.org>
2009-01-22 15:08:58 +11:00
Daniel Stone 32db27a7f8 Input: Remove modifierMap from core
We already have modmap (in the exact same format!) in XKB, so just use
that all the time, instead of duplicating the information.

Signed-off-by: Daniel Stone <daniel@fooishbar.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22 15:08:55 +11:00
Daniel Stone f062e90a95 Input: Remove modifierKeyMap
Since modifierKeyMap is generated from modifierMap, just remove it, and
only generate it when we need to send the modifier map to the client.

Signed-off-by: Daniel Stone <daniel@fooishbar.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22 15:08:55 +11:00
Dan Nicholson 64f924fbf5 Kill off --with-mesa-source completely
There were a few spots left in the source that were using the
--with-mesa-source defined headers or the now removed $(top_srcdir)/GL
directory. These aren't needed anymore as all the necessary source for
GLX is in $(top_srcdir)/glx.

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2009-01-18 09:49:06 -08:00
George Staplin 5c41b3f9c8 XQuartz: xpr: Cleanup some of the code and possibly fix part of the GLX Pixmap problem.
Split DRICreateSurface into 3 functions.

Make CreateSurfaceForPixmap use xp_configure_surface.  I suspect this is partly why
GLXPixmaps never worked.

It will require some more work and thoughts for pbuffers, unless we fake those with
pixmaps and surfaces.
(cherry picked from commit 9cf264e67744262b9f45079e6cd752eb3e3b0e08)
2009-01-15 21:05:00 -08:00
George Staplin c5d52d4c37 XQuartz: GL: Make indirect.c build and work in the 1.6 branch.
Reorder some header files and provide some types earlier on.

Remove the static __GLXextensionInfo __glDDXExtensionInfo; that isn't
used in 1.4 or 1.5, and seems to have been removed from 1.6.  Remove
the data structures associated with that too.

Remove __glXAquaDrawableResize.  The GLX structure doesn't use
it anymore, and the Apple version did nothing useful before.

__glXAquaDrawableSwapBuffers(): base no longer contains a drawGlxc
member.  Now provide the the Apple/Aqua context in the __GLXAquaDrawable
struct.  Add the context member to the __GLXAquaDrawable struct.

Remove the fallback configs.  They aren't used in 1.4 or 1.5 either.

Remove init_visuals().  It's not used in 1.4 or 1.5 either.

In the drawable constructor initialize the state properly, including
the new context member.

Remove glAquaResetExtension() -- it's not used anymore.

This has been tested remotely and proven to work with glxgears,
fire, various texture programs I wrote, and various Mesa demos.
(cherry picked from commit d514152195452ae11ec7769c76489651620ad380)
2009-01-15 21:04:54 -08:00
Jeremy Huddleston 1c504dff8a XQuartz: Fix builddir != srcdir issues and undef _XSERVER64 where appropriate on fat binary compilation 2009-01-15 21:03:27 -08:00
Jeremy Huddleston 67710ad1d1 XQuartz: Don't need explicit Activate/EnableDevice in InitInput
(cherry picked from commit b1d29784410b3b93037e5636f336ba608d8ad6e3)
2009-01-11 16:39:33 -08:00
Jeremy Huddleston 0720816aea XQuartz: Only call DarwinUpdateModKeys when needed
Previously, we were calling it on almost every itteration through sendX11Event
(cherry picked from commit 6461729647ff4441d80811e73f0c0d2f108f2700)
2009-01-11 16:37:46 -08:00
Jeremy Huddleston c8bf582db8 XQuartz: Comment explaining the 0x10 flag for [e data2]
(cherry picked from commit 3c695280641c1205b97d3bb9f1d5e15a19cfa45f)
2009-01-11 13:56:46 -08:00
Jeremy Huddleston 5339c22a8c XQuartz: Add locking to make mieq thread safe on OSX
(cherry picked from commit 7a8d2266861e74176b5310b83652a9c10a170494)
2009-01-11 01:56:45 -08:00
Jeremy Huddleston 1beff89810 XQuartz: misc 1.6 updates (still --disable-glx)
rlAccel is not longer compatable, and it's not worth fixing
  Don't override DeviceCursorInitialize with a noop
  Don't do a SwitchCoreKeyboard (which wasn't even needed in the first place)
(cherry picked from commit c137f681680e1d04b1513a8be68aeda4d1c56fd5)
2009-01-11 01:55:26 -08:00
Jeremy Huddleston 7a8abb9c85 XQuartz: Bundle version 2.4.0
(cherry picked from commit 3a3ccf5354e4275abe9d01f41a92602df5d690dc)
2009-01-11 01:54:28 -08:00
George Staplin 0d8184de59 XQuartz: GL: Set the __GLXconfig renderType to GLX_RGBA_BIT.
(cherry picked from commit 3c14546f58f8a138fe67c9cacc3bd0b7fa90c29a)
2009-01-10 01:00:24 -08:00
George Staplin 9c3975d63e XQuartz: GL: Make many more fbconfigs and visuals available for the 1.5 branch.
Use a __GLXconfig linked list struct to store the configurations for the
fbconfigs and visuals in a pGlxScreen.

Also, remove the __GLXvisualConfig/GlxSetVisualConfigs code that isn't used
anymore.  There is more code we can remove later, but I want to do that in
separate commits.
(cherry picked from commit 94162b0f8a25267aca280d25e216cc6bde47da6e)
2009-01-10 01:00:09 -08:00
Jeremy Huddleston a68373994f XQuartz: Update padding in appledristr. This shouldn't change how the struct ends up in memory, but should make it more obvious for human eyes
(cherry picked from commit f7b6c1907c326a1befd8b5c8a1d311d551e8670f)
2009-01-10 00:59:16 -08:00
Jeremy Huddleston fc14d52297 XQuartz: Use AvailabilityMacros.h instead of availability.h for Tiger
(cherry picked from commit 91f3c3435716195e6d606c8e2f6b0de52eb5972d)
2009-01-07 01:48:23 -08:00
Jeremy Huddleston af820259a0 XQuartz: Copyright Update... happy new year
(cherry picked from commit 9f1c26ae8d9ccf81cba0ab946326968a701f8c36)
2009-01-02 11:07:29 -08:00
Jeremy Huddleston d8c9ba37ab XQuartz: pbproxy: Push dpy init and CFRunLoop hook setup into the pbproxy thread to avoid possible deadlock
(cherry picked from commit 49e59d32b88e4fad070f230b5efaa261b47f78db)
2009-01-02 11:02:42 -08:00
Jeremy Huddleston 2f361186f9 XQuartz: Don't use NX_SECONDARYFNMASK, NX_NUMERICPADMASK, NX_HELPMASK
We don't have keycodes for them, so don't try to use them
(cherry picked from commit cb912aca3a2834c4ad8e386c8a0d05c1bb31b0e7)
2008-12-31 12:45:34 -08:00
Jeremy Huddleston a2abaa9fd3 XQuartz: Make sure to reset the saved key state when deactivating X11.app
(cherry picked from commit 3eef78eb321f4f7dbca5a10c80666c621e28a1e0)
2008-12-31 12:45:13 -08:00
Jeremy Huddleston 3986b683ad XQuartz: Honor system key repeat rate
(cherry picked from commit 4303c9be39a86f5a21de108f72b90a989435905e)
2008-12-31 12:44:43 -08:00
Jeremy Huddleston 1a69d56afd XQuartz: Better avoid stuck keys on context switches
(cherry picked from commit e9963f1a4f4f12f253eae9d4f01694b6cabe35ad)
2008-12-31 12:43:17 -08:00
Jeremy Huddleston f464b5a916 XQuartz: Workaround OSX VNC server bug for modifier key state
A better approach which ensures we have a L modifier key down if we are told neither are down and atleast one is down... =/
(cherry picked from commit bc13dda345f716bf4de9bfe4e1d85969263b60c2)
2008-12-31 12:43:02 -08:00
Jeremy Huddleston 3ead9aa260 XQuartz: Updated man page fullscreen_hotkeys fullscreen_menu
(cherry picked from commit 00f3a2e33c8e91da5f855821313a04ea97445656)
2008-12-31 12:42:48 -08:00
Jeremy Huddleston 997e8c321b XQuartz: Try harder to get the user's login environment
(cherry picked from commit 6bedaddd78aa04bd303df434a4c49bb87bd7deaa)
2008-12-28 22:17:31 -08:00
Jeremy Huddleston ae8dc47fd9 XQuartz: Reposition windows when we enter fullscreen to ensure our root window
(cherry picked from commit 7617d3659b5481ef85aecc1f936e7dd2662bdfbd)
2008-12-28 22:17:16 -08:00
Jeremy Huddleston 895186e026 XQuartz: Re-enable rlAccel
It was incorrectly blamed for some crashes a few months ago, and it should be
safe to use until we get an EXA driver to replace it.
(cherry picked from commit 8121f30bd29591fc74fbc680fbbf20210271fa58)
2008-12-28 22:17:03 -08:00
Jeremy Huddleston a1b201bcb0 XQuartz: Use depth=24 instead of FatalError if we can't figure out our depth
(cherry picked from commit 80b65c5b78d125c4ad3620b87b121c9e666299c3)
2008-12-23 12:45:57 -08:00
Jeremy Huddleston ba9dc353a6 XQuartz: Don't use keycode 0 to determine !swallow since our most common key to swallow is actual keycode 0 (a)
(cherry picked from commit 33f43a7f03023bfbab25a957cb81fc25b4afa4ca)
2008-12-21 21:36:02 -08:00
Jeremy Huddleston f0cdccd1e2 XQuartz: Update our "screens" when we toggle rootless rather than when we toggle fullscreen
This old behavior was used as a workaround for the menubar behavior in the older server,
but we handle it better now and need to update our screens when we toggle the rootless
state instead.
(cherry picked from commit 508aa95bc2cd3fdc3dff448ec090919bf807d153)
2008-12-21 21:35:46 -08:00