Commit Graph

904 Commits

Author SHA1 Message Date
Jeremy Huddleston
0efd7b8d82 XQuartz GLX: Change around includes for better compatability with different OS versions
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-05-02 15:27:29 -07:00
Oliver McFadden
048d15192a x-list.c: null-returning function malloc() was called without checking
Signed-off-by: Oliver McFadden <oliver.mcfadden@nokia.com>
Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-05-02 15:27:29 -07:00
Keith Packard
28b7b2b8d0 unifdef -B -DRENDER to always include RENDER code
This patch was created with:

git ls-files '*.[ch]' | while read f; do unifdef -B -DRENDER -o $f $f; done

Signed-off-by: Keith Packard <keithp@keithp.com>
2010-04-19 09:26:10 -07:00
Jeremy Huddleston
5b0faf3554 XQuartz GLX: Don't let garbage enter our pixel request
https://bugs.freedesktop.org/show_bug.cgi?id=27654

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-04-15 10:57:04 -07:00
Jeremy Huddleston
206531f75c XQuartz: Localization update
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-04-15 10:57:03 -07:00
Jeremy Huddleston
59edde7c28 XQuartz: Add a GUI preference for the Alt / Mode_switch toggle
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
Reviewed-by: Kevin Van Vechten <kvv@apple.com>
2010-04-11 16:30:25 -07:00
Jeremy Huddleston
5600f7f001 XQuartz: Customize the NSDefaults id in the man file.
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
Reviewed-by: Kevin Van Vechten <kvv@apple.com>
2010-04-11 16:30:22 -07:00
Jeremy Huddleston
840d12c7a6 XQuartz: Add a defaults option to toggle Alt / Mode_switch
See option_sends_alt in Xquartz(1)

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
Reviewed-by: Kevin Van Vechten <kvv@apple.com>
2010-04-11 16:30:19 -07:00
Jeremy Huddleston
d6f160510a XQuartz: Blacklist some oddball legacy Mac keycodes that break wine
http://xquartz.macosforge.org/trac/ticket/295

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
Reviewed-by: Kevin Van Vechten <kvv@apple.com>
2010-04-11 16:30:14 -07:00
Jeremy Huddleston
02328f190f Bump bundle version to 2.5.1
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-04-01 18:22:32 -07:00
Jeremy Huddleston
0e342add77 darwin: Correct inline assembly for ___crashreporter_info__
It was missing an underscore.

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-04-01 15:32:51 -07:00
Jeremy Huddleston
28a5f14b40 XQuartz: Re-query dixScreenOrigins as the value could've changed.
Fix a regression in 9c9c3a85b0

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
Acked-by: Adam Jackson <ajax@redhat.com>
2010-03-29 09:37:19 -07:00
Jeremy Huddleston
436d0bb9cc darwin: Generate crash reports on FatalError()
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
Acked-by: Adam Jackson <ajax@redhat.com>
2010-03-29 09:37:17 -07:00
Jeremy Huddleston
339207be6f XQuartz: Workaround weird key data reported on some layouts
This should make 'Unicode Hex Input' work as an input layout.

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
Acked-by: Adam Jackson <ajax@redhat.com>
2010-03-29 09:37:10 -07:00
Keith Packard
b29220dc76 Merge remote branch 'jeremyhu/master' 2010-03-21 23:01:58 -07:00
Yaakov Selkowitz
0820a6e2fb Fix .man.N targets for AM_SILENT_RULES
Add $(AM_V_GEN) for sed-based rules so they appear as expected with
automake silent rules, and $(AM_V_at) to completely hide cp/ln/rm
commands which are not prone to fail.

Signed-off-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@sun.com>
Reviewed-by: Julien Cristau <jcristau@debian.org>
2010-03-22 00:45:55 -05:00
Jeremy Huddleston
ed31d50b5f XQuartz: Constrain the pointer to the updated display bounds on display reconfigure.
http://xquartz.macosforge.org/trac/ticket/346
2010-03-21 21:56:39 -07:00
Jeremy Huddleston
927480be12 XQuartz: pbproxy: Make standalone xpbproxy respect the launchd prefix
Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
2010-03-21 21:56:39 -07:00
Jeremy Huddleston
d16bc8a3cd XQuartz: xpbproxy: Cleanup xpbproxy threading
Confine xpbproxy to a single thread
Runs inside its own CFRunLoop

Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
2010-03-21 21:56:39 -07:00
Jeremy Huddleston
9c9c3a85b0 XQuartz: Minor cleanup
Move RandRInit to where it will need to be (not yet implemented)

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-03-21 21:56:39 -07:00
Jeremy Huddleston
bb75d0df8b XQuartz: GLX: Fix Availability for Tiger ppc workaround
Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
2010-03-21 21:56:39 -07:00
Jeremy Huddleston
eac7cdabec Revert "XQuartz: Explicitly pass a bellProc to make XBell() work again."
I'm not quite sure why this was necessary, but DDXRingBell is being called
from CoreKeyboardBell, so we don't need a separate bellProc which would
result in multiple rings.

This reverts commit 9071b0d697.

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-03-21 21:56:39 -07:00
Keith Packard
df9b6f16b2 Merge remote branch 'jeremyhu/master' 2010-03-15 08:26:58 -07:00
Gaetan Nadon
5f169f5493 XQuartz: remove undefined XSERVER_CFLAGS variable
This is a variable local to configure.ac which is not AC_SUBST()
It is undefined in any generated Makefile.

Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
Signed-off-by: Keith Packard <keithp@keithp.com>
2010-03-15 08:24:02 -07:00
Jeremy Huddleston
5172253bae XQuartz: Use an empty xkb keymap by default
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-03-11 22:27:38 -08:00
Jeremy Huddleston
b117bc7a44 XQuartz: Include os.h for OsAbort()
Fixes regression from 5b9a52be7e

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-03-11 22:27:38 -08:00
Jeremy Huddleston
b7a16117c6 XQuartz: GLX: Fix prototype for swapBuffers
This was a regression introduced by 04a54f69a8

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-03-11 22:27:37 -08:00
Rami Ylimaki
5b9a52be7e os: Prevent core dump from being truncated.
The problem fixed by this patch can be reproduced on Linux with the
following steps.
- Access NULL pointer intentionally in ProcessOtherEvent on key press.
- Instead of saving core dump to a file, write it into a pipe.
  echo "|/usr/sbin/my-core-dumper" > /proc/sys/kernel/core_pattern
- Dump the core by pressing a key.

While the core is being dumped into the pipe, the smart schedule timer
will cause a pending SIGALRM. Linux kernel stops writing data to the
pipe when there are pending signals. This causes the core dump to be
truncated. On my system I'm expecting a 6 MB dump but the size will be
60 kB instead. The problem is solved if we block the SIGALRM caused by
expired smart schedule timer.

I haven't been able to reproduce this problem in the following cases.
- Save core dump to a file instead of a pipe.
- kill -SEGV `pidof Xorg`
- Press a key to dump core while gdb is attached to Xorg.
- Give option -dumbSched to Xorg.

Also note that the fix works only when NoTrapSignals has the default
value FALSE. The problem can still be reproduced if error signals
aren't trapped. In addition to pending SIGALRM, there is a similar
problem with pending SIGIO from the keyboard driver during core dump.

Signed-off-by: Rami Ylimaki <ext-rami.ylimaki@nokia.com>
Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
2010-02-17 23:20:52 -08:00
Jeremy Huddleston
4e8bf12b13 XQuartz: Fix a possible buffer overrun in quartzAudio
Also dropped deprecated API while there

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-02-15 16:46:21 -08:00
Jeremy Huddleston
4127e8e5be XQuartz: clang static analysis fixes
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-02-15 15:03:49 -08:00
Jeremy Huddleston
c686c5cbdc XQuartz: Fix linking (CloseInput())
Fixes regresison from d33adcdf03

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-02-15 15:03:49 -08:00
Jeremy Huddleston
52456c602c XQuartz: Attatch a stub display when CoreGraphics reports no displays.
This is half of the required changes to address the "stuck mouse pointer"
bug that occurs when X11 launches while the displays are asleep.  The
remainder of the fix is part of libXplugin which needs to be updated to
send XP_EVENT_DISPLAY_CHANGED when the display wakes up.  If you don't
have a recent enough libXplugin (expected in 2.5.0_beta2 or later), you
can cause this event to be sent by changing your display resolution (or
you could just start X11.app with your screens awake).

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-01-30 14:49:02 -08:00
Jeremy Huddleston
15f4bb6dc6 XQuartz: Dead code removal
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-01-30 14:30:40 -08:00
Jeremy Huddleston
7ba5de6e9e XQuartz: Add some .gitignore magic
Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
2010-01-30 10:55:38 -08:00
Jeremy Huddleston
6f6a99abc1 XQuartz: Don't FatalError in x_hook_run if the list is empty
Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
2010-01-13 14:39:54 -08:00
Jeremy Huddleston
6bde306f7f XQuartz: Update copyright in bundle for 2010
Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
2010-01-13 11:21:28 -08:00
Jeremy Huddleston
6008cc1164 XQuartz: Setup the modifier map in the quartz thread
This avoids possible doing it twice which could result in incorrect
keycodes for alt due to our loss of information about its side.

Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
2010-01-13 11:21:28 -08:00
Dan Nicholson
0711598dd3 config: Introduce InputAttributes in NewInputDeviceRequest
In order to give NewInputDeviceRequest more information, a new
InputAttributes type is introduced. Currently, this collects the product
and vendor name, device path, and sets booleans for attributes such as
having keys and/or a pointer. Only the HAL backend fills in the
attributes, though.

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Reviewed-by: Peter Hutterer <peter.hutterer at who-t.net>
2009-12-22 23:24:13 -08:00
Alan Coopersmith
895f40792a Add type name argument to CreateNewResourceType
Convert all calls of CreateNewResourceType to pass name argument

Breaks DIX ABI.

ABI versions bumped:

Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
2009-12-18 17:44:12 -08:00
Alan Coopersmith
a11c58fa0c Ensure all resource types created have names registered
Calls RegisterResourceName to record the type name for
use by X-Resource, XACE/SELinux/XTsol, and DTrace.

Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Reviewed-by: Keith Packard <keithp@keithp.com>
2009-12-18 16:51:45 -08:00
Alan Coopersmith
eb750f8b5e Check for failures from CreateNewResourceType
Make sure to check return value before setting bitmask flags.
For most calls, just fails to init the extension.   Since Xinput
already calls FatalError() on initialization failure, so does
failure to allocate Xinput's resource type.

Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Reviewed-by: Keith Packard <keithp@keithp.com>
2009-12-18 16:51:45 -08:00
Jeremy Huddleston
97a6454ea5 XQuartz: pbproxy: Fix building of standalone xpbproxy executable
Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
2009-12-09 18:27:31 -08:00
Jeremy Huddleston
1b8f90aa8b Miscellaneous compilation warning fixes
main.c:134: warning: no previous prototype for 'dix_main'
rootlessScreen.c: In function 'RootlessMarkOverlappedWindows':
rootlessScreen.c:434: warning: function declaration isn't a prototype
backtrace.c:51: warning: format '%lx' expects type 'long unsigned int', but argument 5 has type 'int'
backtrace.c:54: warning: format '%lx' expects type 'long unsigned int', but argument 5 has type 'int'
set.c: In function 'RecordSetMemoryRequirements':
set.c:413: warning: old-style function definition
set.c: In function 'RecordCreateSet':
set.c:425: warning: old-style function definition
stub.c: In function ‘main’:
stub.c:236: warning: ISO C90 forbids mixed declarations and code

Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
2009-12-08 15:50:28 -08:00
Jeremy Huddleston
f4fc340672 XQuartz: Drop calls to alloca
This makes us more consistent with the rest of the codebase, using xalloc/xfree

Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
Signed-off-by: Keith Packard <keithp@keithp.com>
2009-11-30 17:06:58 -08:00
Jeremy Huddleston
4677b5a800 XQuartz: Allow better compatability with older versions of xinit
If we are id="org.x" and the launchd socket is ":0", we will claim
the socket to match the old behavior before we prefixed the
socket name with our id.

Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
2009-11-23 18:00:31 -08:00
Gaetan Nadon
c739beb439 .gitignore: use common defaults with custom section #24239
Using common defaults will reduce errors and maintenance.
Only the very small or inexistent custom section need periodic maintenance
when the structure of the component changes. Do not edit defaults.

Reviewed-By: Jeremy Huddleston <jeremyhu@apple.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
2009-11-11 21:40:20 -08:00
Jeremy Huddleston
9071b0d697 XQuartz: Explicitly pass a bellProc to make XBell() work again.
Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
2009-11-11 18:00:19 -08:00
Jeremy Huddleston
e87a03fd53 XQuartz: pbproxy: Wait for the server to finish starting up, so display is valid.
Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
2009-11-11 18:00:19 -08:00
Jeremy Huddleston
15fc56addc XQuartz: Buildfix for Leopard and older
Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
2009-11-11 18:00:19 -08:00
Jeremy Huddleston
840a68dc5e XQuartz: Cleanup X11Controller.m compilation warnings.
Declare X11Controller as implementing NSTableViewDataSource.
Use selectRowIndexes:byExtendingSelection instead of selectRow:byExtendingSelection

Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
2009-11-05 18:34:50 -08:00
Jeremy Huddleston
0e3ad44c3b XQuartz: Use dixLookupResourceByType instead of LookupIDByType
Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
2009-11-05 18:34:50 -08:00
Jeremy Huddleston
069fc6ce0a XQuartz: Don't weed out duplicates in generated keymap
There seems to be an issue in the 1.5+ server where shift-space does not
produce a space when 'keycode 57 = space' but it does when 'keycode 57 = space
space'

Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
2009-11-05 18:34:50 -08:00
Jeremy Huddleston
6d6e8fb27f XQuartz: Controller thread launches clients
This avoids a memory leak due to no active auto-release pool on the server thread.

Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
2009-11-05 18:34:50 -08:00
Jeremy Huddleston
5e79976c13 XQuartz: Run xmodmap after programatically updating the keymap.
Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
Signed-off-by: Martin Otte <otte@duke.edu>
2009-11-03 16:35:27 -08:00
Jeremy Huddleston
5b91dfac6f Rootless: Abstract some of the Xplugin specific stuff which has crept into rootlessWindow.c
The rootless extension now directly calls some Xplugin functions, and relies
on types defined in Xplugin.h, which isn't very abstracted :-)

This patch is a start at abstracting some of the Xplugin specific stuff which
has crept into rootlessWindow.c.  This has been done in a pretty mindless fashion,
without much thought as to if the additions to the generic rootless interface are
the correct ones

There is some confusion as to if RootlesscolormapCallback() returns a Bool or
xp_error_enum value (not so abstact), but I have no way of checking, of finding
out if Xplugin actually checks the result :-)

Based on patches from Colin Harrison, Jon Turney and Yaakov Selkowitz

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
Signed-off-by: Keith Packard <keithp@keithp.com>
2009-10-13 13:59:57 -07:00
Jeremy Huddleston
24e640e1fa XQuartz: Fix a possible minor memory leak 2009-10-02 19:20:24 -07:00
Jeremy Huddleston
c4886fbabc XQuartz: Send mouse location with scroll events.
This fixes the problem where (0, 0) was sent as the mouse location with scroll
button events causing the event to not reach the client.
2009-10-02 18:58:35 -07:00
Jeremy Huddleston
3d7cf468df XQuartz: Update version strings to be X11R7.5 and the bundle 2.5.0
Is fink really _still_ relying on this X11R7.x version string?
2009-10-01 11:58:18 -07:00
Jeremy Huddleston
873467adad XQuartz: Set the proper bitmap for key repeats...
XkbSetRepeatKeys lies and doesn't do what it says it will...
2009-09-30 00:23:47 -07:00
Jeremy Huddleston
f11a356bce XQuartz: Cleaned up keymap setting for easier maintenance
(cherry picked from commit b9dfed9e88)
2009-09-29 00:34:41 -07:00
Jeremy Huddleston
f3223c71cf XQuartz: Remove the redundant xquartz_resetenv_display
unsetenv(DISPLAY) takes care of this for us anyway
(cherry picked from commit d2263645d8)
2009-09-29 00:34:41 -07:00
Jeremy Huddleston
9b98b88322 XQuartz: Query the BundleIdentifier from the bundle in X11.bin rather than using the configure option.
This lets X11.bin drop into any .app ... the Info.plist and Xquartz binary need to have it hardcoded still.
(cherry picked from commit 9ad16b8e50)
2009-09-29 00:34:41 -07:00
Jeremy Huddleston
6df00917ca XQuartz: Fix QuartzSetCursor to match the expected prototype.
(cherry picked from commit dadab5a227)
2009-09-27 23:31:41 -07:00
Jeremy Huddleston
67a51cd9ef XQuartz: Fix a bunch of compilation warnings about style
(cherry picked from commit 54000bdcbc)
2009-09-27 23:31:35 -07:00
Jeremy Huddleston
96780eaf32 XQuartz: Nuke TSM
It's deprecated in SnowLeopard.  Ben and I both have no idea what it is for.  It says something about unicode input, but urxvt seems fine taking in unicode, so /shrug... bye.
(cherry picked from commit 29cb904e4d)
2009-09-27 23:31:29 -07:00
Jeremy Huddleston
15e15816a2 XQuartz: Fix inverse map from mode_switch to alt
(cherry picked from commit de6cee11e1)
2009-09-27 23:31:23 -07:00
Jeremy Huddleston
558d803b29 XQuartz: Force a keymap resync on the first keypress to workaround XKB mucking with our keymap.
We need to find a better way to work with XKB on this.
(cherry picked from commit ceaa5c779c)
2009-09-27 23:31:16 -07:00
Jeremy Huddleston
226b1033b4 XQuartz: Transition from xEvent based mieq to InternalEvent
(cherry picked from commit a3dbde2de8)
2009-09-27 23:31:07 -07:00
Jeremy Huddleston
a2cd211778 XQuartz: Stop checking version numbers of the bundle because CFBundleGetVersionNumber is gimpish
(cherry picked from commit 9f5bdd8960)
2009-09-26 23:45:35 -07:00
Jeremy Huddleston
fbfbf93405 XQuartz: Add pressure/tilt property labels
(cherry picked from commit 84ea67130ef6b4086042aad6036ce66f93ea3e56)
2009-09-26 23:30:57 -07:00
Jeremy Huddleston
65f1484089 XQuartz: Fix a brain-o array indexing problem
/bop Peter
(cherry picked from commit 494a6b046a258ad83dc98eb92b7c3d8f1d2626bb)
2009-09-26 23:30:51 -07:00
Jeremy Huddleston
7159381881 XQuartz: Nuke duplicate locks that make painful headaches
(cherry picked from commit 1dd56322bd1722f2427fb2d833c5608248b60cf0)
2009-09-26 23:30:46 -07:00
Jeremy Huddleston
dc1e1bebff XQuartz: Use internal xshm header for new xextproto
(cherry picked from commit 1755239330)
(cherry picked from commit 697be460d0)
2009-09-26 23:30:39 -07:00
Jeremy Huddleston
33bf9cb69d XQuartz: GLX capabilities: Allow 16bit accumulation buffers
http://xquartz.macosforge.org/trac/ticket/308
(cherry picked from commit e9e63a2118)
2009-09-23 18:21:48 -07:00
Peter Hutterer
55747d256d input: define server-supported protocol versions in one single file.
include/protocol-versions.h specifies each extension version as supported by
the server and sent back on the wire to the client.

This fixes up several issues with the server potentially reporting a higher
version of the protocol if recompiled against a newer version of the
protocol.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Acked-by: Rémi Cardona <remi@gentoo.org>
Acked-by: Julien Cristau <jcristau@debian.org>
2009-09-21 21:47:35 +10:00
Jeremy Huddleston
422cd7a674 XQuartz: pbproxy: Remove debugging XBell()
(cherry picked from commit 1fd7c1fd47)
2009-09-14 14:29:50 -07:00
Jeremy Huddleston
1e0caf9a2c XQuartz: launchd: Fallback on :0 if prefix:0 gives an error for the socket name
(cherry picked from commit 647c871dc9)
2009-09-06 14:06:28 -07:00
Jeremy Huddleston
081f72390a XQuartz: Fix "warning: function declaration isn’t a prototype" noise
(cherry picked from commit 9a77905a97)
2009-09-06 14:06:16 -07:00
Jeremy Huddleston
7ece2cb220 XQuartz: pbproxy: 64bit fixes: Properly process an array of Atoms
(cherry picked from commit 1b659cda1a)
2009-09-06 14:06:06 -07:00
Jeremy Huddleston
1747120043 XQuartz: Fix a strcpy/strcmp typo
(cherry picked from commit 701c24da3e)
2009-09-05 02:53:59 -07:00
Jeremy Huddleston
1f61bbeffd XQuartz: Check the DISPLAY environment variable to see if the socket at startup is ours. If not, ignore it and fork/exec startx.
(cherry picked from commit 3d5e10cce3)
2009-09-04 00:42:44 -07:00
Jeremy Huddleston
0a361d0e5f XQuartz: Use --with-launchd-id-prefix for consistency with xinit
Also actually honor LAUNCHD_ID_PREFIX and APPLE_APPLICATION_NAME
(cherry picked from commit 990038ab00)
2009-09-04 00:42:31 -07:00
Jeremy Huddleston
a8e634b86d XQuartz: GLX: Drawable does not contain resize anymore.
(cherry picked from commit 1e642f22fb)
2009-08-31 15:59:45 -07:00
Jeremy Huddleston
6f3cc08ec0 XQuartz: GL: Unset GL_EXT_gpu_program_parameters for Tiger/ppc
See http://trac.macports.org/ticket/20638
(cherry picked from commit 0f3a89d306)
2009-08-31 07:45:50 -07:00
Jeremy Huddleston
fdb29ebeed XQuartz: GL: Explicitly set GL_EXT symbols to 0 if they are not in OpenGL.framework to prevent X11's glext.h from setting them to 1.
(cherry picked from commit 7fe37137d8)
2009-08-31 07:45:40 -07:00
Jeremy Huddleston
af76bddd7a XQuartz: Check NSINTEGER_DEFINED to make sure the NSInteger and NSUInteger types are defined.
(cherry picked from commit 36e02a8649)
2009-08-25 20:17:41 -07:00
Jeremy Huddleston
07c935b72f XQuartz: Use applewmproto 1.4 updated headers.
(cherry picked from commit 203df06c0e)
2009-08-25 20:16:47 -07:00
Jeremy Huddleston
931160fcf3 XQuartz: AIGLX: Provide empty __glXAquaDrawableResize to avoid crashing in DoMakeCurrent
(cherry picked from commit 60a1d2c276)
2009-08-05 16:17:47 -07:00
Jeremy Huddleston
0fe639a314 XQuartz: Only save lastpt on mouse/tablet events
(cherry picked from commit 552be074e5)
2009-08-05 16:17:33 -07:00
Jeremy Huddleston
491c2d74c1 XQuartz: Use mouseLocation rather than locationInWindow when setting lastpt
I don't understand the *why* ... I just see that it works better this way for games like Quake2 through wine.  It *should* be better the other way, but somehow it's not.

I guess this will go in my list of puzzles to unravel.
(cherry picked from commit 65ae2d00e1)
2009-08-05 16:17:22 -07:00
Jeremy Huddleston
df6c013524 XQuartz: Don't use location delta for tablets since NSEvent does not give a precise delta.
(cherry picked from commit 6c5bf756a7)
2009-08-05 16:17:09 -07:00
Jeremy Huddleston
e360104880 XQuartz: Purge redundant QuartzBell
(cherry picked from commit de14a63d20)
2009-08-05 16:17:01 -07:00
Jeremy Huddleston
ae65daab08 XQuartz: Unify how we set our bitmasks for visuals
(cherry picked from commit c230b52c27)
2009-07-31 15:34:13 -07:00
Jeremy Huddleston
4a53fed41d XQuartz: Dead code removal for StaticColor visual
(cherry picked from commit e457a44e87)
2009-07-31 15:34:07 -07:00
Jeremy Huddleston
da0a274780 XQuartz: Cleanup the bitmask setting for GLX visuals.
(cherry picked from commit d32c3df258)
2009-07-31 15:34:03 -07:00
Jeremy Huddleston
70ac671af2 XQuartz: no DirectColor
(cherry picked from commit df2fbc410f)
2009-07-31 15:33:58 -07:00
Jeremy Huddleston
c0c72a866a XQuartz: Define DDXRingBell
(cherry picked from commit 1133473812)
2009-07-31 15:33:54 -07:00
Jeremy Huddleston
a85523dc50 XQuartz: Avoid a possible spinlock in applicationWillTerminate
(cherry picked from commit f430cda0fd)
2009-07-28 22:54:11 -07:00
Jeremy Huddleston
1e49c8d340 XQuartz: Avoid namespace collission for BOOL in Sparkle
(cherry picked from commit 227c6e01a6)
2009-07-28 22:54:06 -07:00
Jeremy Huddleston
c81595e23b XQuartz: Overhaul setting up visuals
The main change is cleanup of the visualConfigs and setting up alpha correctly there to match the visuals being added earlier (so the default visual has a corresponding GLX visual)
(cherry picked from commit 7351db5c87)
2009-07-26 02:35:49 -07:00
Jeremy Huddleston
7f28c555b8 XQuartz: Use CopyKeyClass to copy the keymap to the virtual core keyboard.
(cherry picked from commit 9a801d1716)
2009-07-25 20:19:05 -07:00
Jeremy Huddleston
1031ac3a73 Revert "XQuartz: Copy the keyboard map to the core keyboard"
This reverts commit 795de791cf.
2009-07-25 20:18:38 -07:00
Jeremy Huddleston
48703083a1 XQuartz: Use pDev=NULL for DarwinSendDDXEvent
These events aren't really related to physical input devices anyways, so it doesn't make sense to use the pointer.
(cherry picked from commit bfe0b9cfa7)
2009-07-25 20:18:15 -07:00
Jeremy Huddleston
dab8de0368 XQuartz: Bump the reported version to X11R7.4
(cherry picked from commit c83f701aa7)
2009-07-25 15:25:35 -07:00
Jeremy Huddleston
9e74bb97ab XQuartz: xpr: Added missing include for RootlessHideAllWindows
(cherry picked from commit 75e1047308)
2009-07-25 15:25:23 -07:00
Jeremy Huddleston
09b024db63 XQuartz: Use the master device in DarwinSendDDXEvent to avoid duplicate events.
(cherry picked from commit 6fa62192af)
2009-07-25 15:25:17 -07:00
Jeremy Huddleston
795de791cf XQuartz: Copy the keyboard map to the core keyboard
This still doesn't handle the modifier map... gotta figure out what to do now that SwitchCoreKeyboard is gone
(cherry picked from commit 427e1aab41)
2009-07-25 15:25:06 -07:00
Jeremy Huddleston
fb46474feb XQuartz: Rever the "Set can_quit to true during a Sparkle-initiated relaunch." change
This was in place to work around the issue that was correctly solved with the
previous commit (changing the Windows menu behavior).  Reverting this change
no longer causes crashing, so it's safe to show the dialog now.
(cherry picked from commit 023cef31bb)
2009-07-24 09:42:18 -07:00
Jeremy Huddleston
0d73893a57 XQuartz: Change handling of Windows menu to workaround a bug triggered by mixing Sparkle and X11 windows
<rdar://problem/7088335> NSApplication releases the separator in the Windows menu even though it's an IBOutlet
(cherry picked from commit 27ac513526)
2009-07-24 09:42:00 -07:00
Jeremy Huddleston
171409cecb XQuartz: Set can_quit to true during a Sparkle-initiated relaunch.
(cherry picked from commit b2e9a77111)
2009-07-24 09:41:46 -07:00
Jeremy Huddleston
7ff84d350b XQuartz: Added a "Check for X11 Updates..." menu item.
(cherry picked from commit 305144bfa4)
2009-07-24 09:41:32 -07:00
Jeremy Huddleston
be4dd35ffe XQuartz: Initial support for automatic updates through Sparkle
(cherry picked from commit c45f1be364)
2009-07-20 22:04:18 -07:00
Jeremy Huddleston
f517fca31d XQuartz: Localization updates
(cherry picked from commit 4b797fc1ed)
2009-07-16 17:32:10 -07:00
Jeremy Huddleston
c8a3516514 XQuartz: Cleanup getGlCapabilities to avoid hardcoding the number of displays
(cherry picked from commit 12f7365f1f)
2009-07-16 17:32:04 -07:00
Jeremy Huddleston
e7bc9ff816 XQuartz: Allow more than 3 OSX displays
(cherry picked from commit 45045eb396)
2009-07-16 17:32:03 -07:00
Jeremy Huddleston
53ae6b6338 XQuartz: Cleanup keymap locking, fix a possible synchro bug
(cherry picked from commit 33e7437a49)
2009-07-15 23:18:35 -07:00
Peter Hutterer
0b4e6af857 xquartz: switch to byte counting functions
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2009-07-14 10:13:45 +10:00
Jeremy Huddleston
d6b8205e69 XQuartz: ProcAppleWMAttachTransient to play nice with the new Dock in SL
(cherry picked from commit ddc0242d8f)
2009-07-03 19:46:00 -07:00
Jeremy Huddleston
b8050bb6de XQuartz: Don't leave zombied processes at startup
(cherry picked from commit 40c1406830)
2009-06-27 18:26:08 -07:00
Jeremy Huddleston
aaff92c8c2 XQuartz: 64bit fix for screen origin in AppleWM
(cherry picked from commit 60a757d280)
2009-06-27 18:25:56 -07:00
Jeremy Huddleston
cabcc1a7ad XQuartz: More localization updates
(cherry picked from commit 5925c1f48a)
2009-06-27 10:42:50 -07:00
Jeremy Huddleston
ae20e748cd XQuartz: More localization updates
(cherry picked from commit 7fbe974246)
2009-06-19 21:16:47 -07:00
Peter Hutterer
a30fef9956 input: Add labels to buttons and valuators - ABI_XINPUT_VERSION 7
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-06-18 14:41:47 +10:00
Jeremy Huddleston
077556ec39 XQuartz: AIGLX dispatch table cleanup
This should fix some issues when building on different versions of OSX.  We only use extensions that OpenGL.framework's glext.h header tells us are supported.
(cherry picked from commit e10c53421f)
2009-06-06 22:24:06 -07:00
Jeremy Huddleston
2429daa7e6 XQuartz: Default to forcing the dialog box before quitting.
This will show the quit dialog for users of other WMs.
(cherry picked from commit 639ee0c913)
(cherry picked from commit 09432fa5b1)
2009-06-06 22:23:46 -07:00
Jeremy Huddleston
ec9e9c8bca XQuartz: English localization update for HIG compliance
(cherry picked from commit 86b319d7cb)
2009-05-29 11:44:53 -07:00
Jeremy Huddleston
f1441b8353 XQuartz: More localization updates
(cherry picked from commit b107390c9f)
2009-05-27 10:16:11 -07:00
Jeremy Huddleston
c2b668e6ff XQuartz: pbproxy standalone: added missing variable declarations.
(cherry picked from commit 2d947d17a3)
2009-05-09 11:41:47 -07:00
Peter Hutterer
987579c930 dix: remove all but main() from main.c
All other functions are pushed into where they seemed to fit.
main.c is now linked separately into libmain.a and linked in by the various
DDXs.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-04-28 15:57:14 +10:00
Jeremy Huddleston
ccd28ca2ad XQuartz: Localization update
(cherry picked from commit 9435fc5e20)
2009-04-22 19:30:33 -07:00
Jeremy Huddleston
a362d0f4fb XQuartz: Make sure the bgMouseLocationUpdated state is consistent
(cherry picked from commit 8fa8a8e1db)
2009-04-22 19:30:18 -07:00
Peter Hutterer
b406886bbf input: allow NULL as XkbRMVLOSet in InitKeyboardDeviceStruct.
Virtually all callers use
    XkbGetRulesDefault(&rmlvo);
    InitKeyboardDeviceStruct(..., rmlvo);

Let's save them the trouble and accept NULL as a hint to take the
default RMLVO.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Acked-by: Benjamin Close <Benjamin.Close@clearchain.com>
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
2009-04-17 10:03:40 +10:00
Jeremy Huddleston
140463a197 XQuartz: Use correct values for ProximityIn and ProximityOut
This was the other underlying cause of teh 100% CPU tablet issue.
(cherry picked from commit a9cecf34c2)
2009-04-11 17:26:27 -07:00
Jeremy Huddleston
80a7bb2605 XQuartz: Solve the tablet 100% CPU bug
This happened because we put a byte in the fd to wake up dispatch, but we never actually enqueued anything in mieq because the num_events was 0.
(cherry picked from commit c21ca7558d)
2009-04-11 17:26:07 -07:00
Jeremy Huddleston
6f8f7c78f1 XQuartz: Re-enable background window checking
since that code was not the culprit for the wacom tablet, background 100% CPU bug
(cherry picked from commit fc1dc5d71b)
2009-04-11 17:23:03 -07:00
Jeremy Huddleston
8522a759c9 XQuartz: Only set MotionNotify on activation if it is updated.
(cherry picked from commit ae8077a251)
2009-04-11 17:22:50 -07:00
Jeremy Huddleston
5e55becddc XQuartz: Make sure the Fn doesn't trigger unneccessary calls to DarwinUpdateModKeys()
(cherry picked from commit 70a18558c6)
2009-04-11 17:22:38 -07:00
Jeremy Huddleston
bd1d917909 XQuartz: Re-enable Fn as an option for 3button mouse simulation.
Patch from Martin Otte <otte@duke.edu>
(cherry picked from commit b5ec3be6b5)
2009-04-11 17:22:20 -07:00
Jeremy Huddleston
808fd2c67f XQuartz: xprSetWindowLevel updated to store the level requested by the WM
(cherry picked from commit c28c2ddc3a)
2009-04-10 00:48:35 -07:00
Jeremy Huddleston
dfb0d7aefb XQuartz: Update window levels when changing rootless state
(cherry picked from commit 1359ded5bf)
2009-04-10 00:47:40 -07:00
Jeremy Huddleston
d5ef88d754 XQuartz: Fix window levels for rooted mode to allow showing the menu bar.
(cherry picked from commit 80759a4186)
2009-04-10 00:47:28 -07:00
Jeremy Huddleston
15146b8637 XQuartz: Properly set the window level for the root window
(cherry picked from commit bdf9286d1c)
2009-04-10 00:47:16 -07:00
Jeremy Huddleston
8d5dcfe215 XQuartz: Properly set the menu bar and hotkey state when changing rootless mode.
Currently no code path exhibits the broken behavior since we only toggle into rootless if we don't have the root.
(cherry picked from commit 970f100ca3)
2009-04-10 00:47:03 -07:00
Jeremy Huddleston
82d7cf5cdc XQuartz: In rooted mode, make sure we start in the hidden state.
(cherry picked from commit 5ecc497f71)
2009-04-10 00:46:48 -07:00
Jeremy Huddleston
e86f4e9302 XQuartz: Send MotionNotify before button presses when X11 is in the background
(cherry picked from commit c80d0ec18e)
2009-04-10 00:46:35 -07:00
Jeremy Huddleston
5ccfad8df0 XQuartz: Revert most of the previous override redirect patch
The changes actually caused all windows to move to the current space.  Instead, we're going with a fix entirely within Xplugin that depends on quartz-wm being the window-manager for now.
(cherry picked from commit 997b6f3142)
2009-04-10 00:46:25 -07:00
Jeremy Huddleston
2c03a63ff6 XQuartz: Use updated Xplugin API to send overide-redirect windows to the current space when they're ordered in
This fixes the annoying "using a menu moves me to another space" bug
(cherry picked from commit 9e6dab89e0)
2009-04-05 16:32:12 -07:00
Jeremy Huddleston
67621f3b39 XQuartz: Send a MotionNotify event for the mouse cursor when activating X11.app
Otherwise if X11.app was activated with a mouse click, the location of the even is the last location of the cursor before X11 was deactivated
(cherry picked from commit c7457d7b31)
2009-04-05 16:32:02 -07:00
Jeremy Huddleston
9180081ec3 XQuartz: Still send mouse events while X11 is in the background if we have test extensions enabled
(cherry picked from commit f393fb686c)
2009-04-01 13:53:15 -07:00
Jeremy Huddleston
029307e79a XQuartz: Return BadRequest when SendPSN isn't implemented rather than success
(cherry picked from commit 49871e9917)
2009-04-01 13:53:04 -07:00
Jeremy Huddleston
0603fbc1d3 XQuartz: Pad xAppleDRINotifyEvent to 32bytes to match sizeof(xEvent)
(cherry picked from commit 276ee3bb08)
2009-04-01 13:52:52 -07:00
Jeremy Huddleston
3311ef6ec9 XQuartz: Don't report mouse events while X11 is not the foreground application
(cherry picked from commit 5d1dd35096)
2009-03-31 18:13:18 -07:00
Jeremy Huddleston
0b6e14d46f XQuartz: Fix mouse tracking for quake, et. al. in wine
Patch courtesy of Codeweavers

Fix mouse movement tracking.  For a non-window-related mouse-move event,
calculate the new position by adding the event's delta-x and delta-y values
to the previous mouse position.  Do not rely on the current mouse position
because it may have been changed by a XWarpPointer call.
(cherry picked from commit 7a67935b05)
2009-03-30 20:41:38 -07:00
Jeremy Huddleston
daa9727a02 XQuartz: Implement SendPSN for AppleWM
(cherry picked from commit 779e9fdc2d)
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 3e2427e6e9)
2009-02-26 21:26:01 -08:00
Jeremy Huddleston
d6976e1436 XQuartz: Re-enable support for capslock
(cherry picked from commit 4901b8147e)
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 1d479fa4f3)
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 d3120241f9)
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 c7e3383309)
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 295fe25bd8)
2009-02-20 11:54:45 -08:00
Jeremy Huddleston
67faf41b3f XQuartz: Don't need GlxSetVisualConfig any more
Fixes build failure resulting from 516f8e2cad
(cherry picked from commit 066b17028a)
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 7e99b55651)
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 630518766b)
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 58c4116c47)
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 8b607c9c50)
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 7f29665573)
2009-02-03 10:04:40 -08:00
Jeremy Huddleston
f5c7f8a3ab XQuartz: GLX: Fix accidental exclusion of glBlitFramebufferEXT on Leopard
(cherry picked from commit 8620579483)
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 e01662cadc)
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 143224405b)
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 b57cb05c69)
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 9cf264e677)
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 d514152195)
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 b1d2978441)
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 6461729647)
2009-01-11 16:37:46 -08:00
Jeremy Huddleston
c8bf582db8 XQuartz: Comment explaining the 0x10 flag for [e data2]
(cherry picked from commit 3c69528064)
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 7a8d226686)
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 c137f68168)
2009-01-11 01:55:26 -08:00
Jeremy Huddleston
7a8abb9c85 XQuartz: Bundle version 2.4.0
(cherry picked from commit 3a3ccf5354)
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 3c14546f58)
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 94162b0f8a)
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 f7b6c1907c)
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 91f3c34357)
2009-01-07 01:48:23 -08:00
Jeremy Huddleston
af820259a0 XQuartz: Copyright Update... happy new year
(cherry picked from commit 9f1c26ae8d)
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 49e59d32b8)
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 cb912aca3a)
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 3eef78eb32)
2008-12-31 12:45:13 -08:00
Jeremy Huddleston
3986b683ad XQuartz: Honor system key repeat rate
(cherry picked from commit 4303c9be39)
2008-12-31 12:44:43 -08:00
Jeremy Huddleston
1a69d56afd XQuartz: Better avoid stuck keys on context switches
(cherry picked from commit e9963f1a4f)
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 bc13dda345)
2008-12-31 12:43:02 -08:00
Jeremy Huddleston
3ead9aa260 XQuartz: Updated man page fullscreen_hotkeys fullscreen_menu
(cherry picked from commit 00f3a2e33c)
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 6bedaddd78)
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 7617d3659b)
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 8121f30bd2)
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 80b65c5b78)
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 33f43a7f03)
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 508aa95bc2)
2008-12-21 21:35:46 -08:00
Jeremy Huddleston
8f04a52373 XQuartz: Run applications via '/bin/sh -c ...' to support users who expect shell parsing
(cherry picked from commit 67455e716e)
2008-12-21 21:35:33 -08:00
Jeremy Huddleston
029d255a65 XQuartz: pbproxy: Release display notification lock when not needed to avoid deadlock
(cherry picked from commit 22f664ab95)
2008-12-21 21:35:22 -08:00
Jeremy Huddleston
b1f166f298 XQuartz: update quoting in case X11.app is moved to a directory with a space.
(cherry picked from commit cc805dc799)
2008-12-21 21:35:04 -08:00
Jeremy Huddleston
2f47bda645 XQuartz: Changed X11.sh to allow use of a ~/.x11run as requested by users of alternate shells
(cherry picked from commit b62ed1f8ea)
2008-12-21 21:34:50 -08:00
Jeremy Huddleston
22b2811e6a XQuartz: Name the startup shell script X11 for better compatability
(cherry picked from commit f84613d6fc)
2008-12-21 21:33:17 -08:00
Jeremy Huddleston
450739efa9 XQuartz: Updated menu item ordering for better HIG compliance
(cherry picked from commit 4c9bb241ce)
2008-12-15 03:22:17 -08:00
Jeremy Huddleston
aee27be278 XQuartz: Tiger fix, don't call Xplugin code in the Appkit thread if Xplugin isn't threadsafe.
(cherry picked from commit 748d9e5bd7)
2008-12-15 03:22:01 -08:00
Peter Hutterer
cb95642dc8 Remove #define NEED_EVENTS and NEED_REPLIES
A grep on xorg/* revealed there's no consumer of this define.

Quote Alan Coopersmith:
"The consumer was in past versions of the headers now located
in proto/x11proto - for instance, in X11R6.0's xc/include/Xproto.h,
all the event definitions were only available if NEED_EVENTS were
defined, and all the reply definitions required NEED_REPLIES.

Looks like Xproto.h dropped them by X11R6.3, which didn't have
the #ifdef's anymore, so these are truly ancient now."

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2008-12-12 11:43:32 +10:00
Jeremy Huddleston
119d9c46e8 XQuartz: Fix path to executable
(cherry picked from commit 7e9d3698e0)
2008-12-10 15:08:33 -08:00
Jeremy Huddleston
c46b564c47 XQuartz: fixed make dist
(cherry picked from commit 2d52367ab9)
2008-12-10 15:08:20 -08:00
Jeremy Huddleston
23156a21d8 XQuartz: Make debugging output for invalid depths a bit more detailed
(cherry picked from commit 609fb166b7)
2008-12-10 15:08:05 -08:00
Jeremy Huddleston
76351d2faf XQuartz: Avoid using login /bin/sh blech. Just use a bash script to start the app, so it will inherit the right environment
(cherry picked from commit f4b7ad9cc6)
2008-12-10 15:07:52 -08:00
Jeremy Huddleston
e5ce6e198f XQuartz: unset DISPLAY if we didn't get a launchd socket handoff
(cherry picked from commit b959727f38)
2008-12-10 15:07:35 -08:00
Jeremy Huddleston
ecaaf0462d XQuartz: unsetenv(DISPLAY) if we're not org.x.X11
Also some prefix related fixes.
(cherry picked from commit fd459e9658)
2008-12-10 15:07:26 -08:00
Jeremy Huddleston
ea94995982 XQuartz: Removed some debug spew
(cherry picked from commit 370dcf11b3)
2008-12-10 15:07:15 -08:00
Jeremy Huddleston
ccd2c668c1 XQuartz: darwinPointer reports the actual pixel position now rather than a relative position
(cherry picked from commit a41e7f75de)
2008-12-06 14:12:27 -08:00
Jeremy Huddleston
7ebd0c7e8d XQuartz: Corrected name/command labels in the customization widget
(cherry picked from commit a689c23f17)
2008-12-06 14:12:27 -08:00
Jeremy Huddleston
fa4f2527a5 XQuartz: pbproxy: Simplify linking
(cherry picked from commit 909cc5c4dc)
2008-12-03 21:59:23 -08:00
George Staplin
01eaebdc98 XQuartz: GL: Make various changes to makeFormat, so that it works better. Now glxgears looks normal with the old libGL.
Add various GLX extensions to the list of supported extensions.

Reformat the oddly formatted code in some areas.

Use xalloc and xfree instead of malloc and free.
(cherry picked from commit 755f53eb40)
2008-11-28 13:18:27 -08:00
Jeremy Huddleston
3d527b91b4 XQuartz: Added option to enable/disable test extensions
defaults write org.x.X11 enable_test_extensions -boolean true
(cherry picked from commit fd4710aff3)
(cherry picked from commit 635019ad18)
2008-11-28 13:02:54 -08:00
Jeremy Huddleston
71d3df7cc3 XQuartz: Avoid some warning messages being spewed to system.log by AppKit
(cherry picked from commit 780eff230c)
2008-11-28 13:02:52 -08:00
Jeremy Huddleston
a9796c7bc4 XQuarz: Setup our PATH and PWD earlier, so our initial client benefits from it as well...
(cherry picked from commit cbae2b4473)
2008-11-28 13:02:41 -08:00
Jeremy Huddleston
ef4179f43a XQuartz: Fix dead-acute on Greek keyboards
(cherry picked from commit 807f2ec35c)
2008-11-28 13:02:25 -08:00
Jeremy Huddleston
800f5c681b XQuartz: Fix Czech keyboard dead-acute
(cherry picked from commit 771df2786b)
2008-11-28 13:02:12 -08:00
Jeremy Huddleston
ac57bb36d5 XQuartz: Fix an uninitialized keyboard_type on Tiger
(cherry picked from commit 27b1a5eb34)
2008-11-28 13:01:59 -08:00
Jeremy Huddleston
eb474adf98 XQuartz: Simplify the xquartz_resetenv_display path
(cherry picked from commit d2e0624dd3)
2008-11-25 11:53:12 -08:00
Jeremy Huddleston
94df1ab7f0 XQuartz: Force X11Controller to reset a broken DISPLAY envvar.
(cherry picked from commit f1a52b5b5a)
2008-11-25 11:53:06 -08:00
Jeremy Huddleston
0b314c50a2 XQuartz: Removed hardcoded org.x.X11 from MachIPC as well
(cherry picked from commit b4add7826d)
2008-11-25 11:52:59 -08:00
Jeremy Huddleston
065d2afb0c XQuartz: Add fallback for xpbproxy's display for Tiger or no-launchd-Leopard
(cherry picked from commit 7a8c666594)
2008-11-25 00:54:52 -08:00
Jeremy Huddleston
13df49dca2 XQuartz: Use the environment to pass the bundle's prefs domain on to xinit/quartz-wm for Tiger or no-launchd-LEOPARD
(cherry picked from commit fbf4b0d33f)
2008-11-25 00:54:47 -08:00
Jeremy Huddleston
40187f782b XQuartz: Dead code removal
(cherry picked from commit eeb323612e)
2008-11-25 00:54:42 -08:00
Jeremy Huddleston
b55cad4569 XQuartz: Don't hardcode values of org.x.X11 for the preferences domain
(cherry picked from commit 3a500d9247)
2008-11-25 00:54:37 -08:00
Jeremy Huddleston
d508a3dcca XQuartz: More dead code removal
(cherry picked from commit dcb0f6a2e6)
2008-11-25 00:54:32 -08:00
Jeremy Huddleston
41fbdf72f2 XQuartz: Disable some error spew on Tiger (where it wouldn't be an error)
(cherry picked from commit 73ec6d3dfe)
2008-11-25 00:54:27 -08:00
Jeremy Huddleston
09c3f6e04c XQuartz: Dead code removal
(cherry picked from commit 46c077d9b4)
2008-11-25 00:54:22 -08:00
Jeremy Huddleston
ab12c75162 XQuartz: More Tiger cleanup: bootstrap_strerror
(cherry picked from commit 37f535aff3)
2008-11-25 00:54:17 -08:00
Jeremy Huddleston
8964b8d0ec XQuartz: More 1.6 server API updates 2008-11-22 14:23:23 -08:00
Jeremy Huddleston
ad0f232165 XQuartz: Fixed --disable-glx 2008-11-22 14:04:28 -08:00
Jeremy Huddleston
8e2287c220 XQuartz: Updated some code to use newer server API 2008-11-22 13:57:45 -08:00
George Staplin
6eb33bc0cb XQuartz: GL: Remove the inclusion of glcontextmodes.h.
Add some commentary about future directions needed for the GLX drawable
creation and destruction code.

Match xalloc with xfree.

I made some minor formatting improvements.
(cherry picked from commit b772d64fce)
2008-11-22 11:13:51 -08:00
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 17f6a261fc)
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 3bed9b65c8)
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 e62107e552)
2008-11-21 11:55:49 -08:00
Jeremy Huddleston
393325f908 XQuartz: spewCallStack is noop on Tiger now...
(cherry picked from commit 56c469a68b)
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 0947aa7911)
2008-11-21 10:59:34 -08:00
Jeremy Huddleston
b262788401 XQuartz: More Tiger ifdefs
(cherry picked from commit 803509072f)
2008-11-21 10:59:26 -08:00
Jeremy Huddleston
5107444443 XQuartz: Resurrect the old audio path for Tiger
(cherry picked from commit a61a8d9047)
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 799715b8f3)
2008-11-21 10:59:10 -08:00
Jeremy Huddleston
c4ec71b405 XQuartz: pbproxy: nuke RCS Id, update header license/copyright
(cherry picked from commit 477c6968a8)
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 cb6ffce68a)
2008-11-19 10:58:06 -08:00
Jeremy Huddleston
03f7a66a1a XQuartz: Don't use TIS on Tiger...
(cherry picked from commit be8ac84c15)
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 4294493632)
2008-11-15 19:52:34 -08: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
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
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
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
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
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 637a9f4bd1)
2008-10-31 20:05:39 -07:00
Jeremy Huddleston
c5086badf0 XQuartz: LP64 related casting fixes from Bob Murphy
(cherry picked from commit ea71710aaa)
2008-10-31 19:03:38 -07:00
Jeremy Huddleston
ecd55bc859 XQuartz: displayScreenBounds uses quartzEnableRootless rather than !quartzHasRoot
(cherry picked from commit c883a78ef0)
2008-10-31 15:50:06 -07:00
Jeremy Huddleston
9f49f5172d XQuartz: Silence pointer debug spam
(cherry picked from commit 9ca099e928)
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 1115917ada)
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 5fc73b1141)
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 d5c17f585a)
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 60d7359a67)
2008-10-31 15:48:24 -07:00
Jeremy Huddleston
93d7cd31c5 XQuartz: Purge the old XQUARTZ_EXPORTS_LAUNCHD_FD option
(cherry picked from commit 490756c7fb)
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 183ca5d68b)
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 5797d5b662)
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 9be5998ede)
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 8d048cfa95)
2008-10-28 22:01:22 -07:00
Jeremy Huddleston
b742da0b71 XQuartz: pbproxy: fixed blocking
(cherry picked from commit bb330a1b1c)
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 3647215310)
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 fe35a36390)
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 98a084ce9c)
2008-10-28 22:00:29 -07:00
Jeremy Huddleston
80b6768536 XQuartz: Do check_xinitrc() later to avoid possible deadlock.
(cherry picked from commit af95174a08)
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 6bcbb9ba85)
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 49b7a7c6f2)
2008-10-23 19:22:16 -07:00
Jeremy Huddleston
28d4f71193 XQuartz: pbproxy: Fix compilation on case-sensitive file systems...
(cherry picked from commit 6622efca21)
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 bf561a06b2)
2008-10-23 14:17:19 -07:00
Jeremy Huddleston
75067d12e4 XQuartz: Added missing semicolons to Localizable.strings
(cherry picked from commit e9fe3f36d9)
2008-10-23 14:17:10 -07:00
Jeremy Huddleston
a003932dcc XQuartz: Default dpi to 96 instead of 75
(cherry picked from commit 08a5a333d7)
2008-10-23 14:17:04 -07:00
Jeremy Huddleston
2d764e21f2 XQuartz: pbproxy: SIGHUP reloads preferences.
(cherry picked from commit cbc0935ef7)
2008-10-23 14:16:57 -07:00
Jeremy Huddleston
c837d182c4 XQuartz: Only send mouse events while in the background if we're over a visible window.
This "breaks" xeyes but gets rid of annoying tooltips.
(cherry picked from commit 10090a132a)
2008-10-21 09:34:56 -07:00
Jeremy Huddleston
2a9613980f XQuartz: More fullscreen fixes
Start in rooted mode when enabled
  Make the hotkey cmd-alt-a behave
(cherry picked from commit 22a54e4617)
2008-10-21 09:34:49 -07:00
Jeremy Huddleston
e4ea1494de XQuartz: Cleaned up keyboard init and map reload.
(cherry picked from commit f78c9fc06c)
2008-10-21 09:34:40 -07:00
Jeremy Huddleston
ebb2e1449c XQuartz: Fixed follow-keyboard-layout
≈
(cherry picked from commit a9f9fbf512)
2008-10-21 09:34:28 -07:00
Jeremy Huddleston
f67cd31d2c XQuartz: More progress towards fullscreen...
(cherry picked from commit 628cae86b4)
(cherry picked from commit b47b7ab6d6)
2008-10-21 09:34:17 -07:00
Jeremy Huddleston
d434ed4009 XQuartz: Fixed missing key-equiv for Hide-Others.
(cherry picked from commit 2c4b0f9615)
2008-10-21 09:32:20 -07:00
George Peter Staplin
f935c11398 XQuartz: pbproxy: Fix 2 bugs with the preferences.
Add dump_prefs() for instrospection.

Make prefs_get_bool a little more clear.

In get_property don't assume that the Mac realloc(NULL, 0); returns
non-NULL.  We shouldn't depend on implementation-defined behavior too
much.

Add more commentary in various spots.

Add TARGETS in the TARGETS response.  I don't know why some X11 apps
do this, but it could be something that some weird toolkit/app tests
for.

In reload_preferences add preferences synchronization, so that xpbproxy
reloads the preferences, and picks up any changes.

Fix a typo/misspelling of the sync_clipboard_to_pasteboard preference.
(cherry picked from commit 165cbbb90c)
2008-10-21 09:32:03 -07:00
Jeremy Huddleston
4d978af5c7 XQuartz: Fixed window levels.
(cherry picked from commit ef4d37c73f)
2008-10-21 09:31:56 -07:00
Jeremy Huddleston
84ef8ed6fb XQuartz: implemented primary-on-grab and fixed clipboard-to-pasteboard
(cherry picked from commit bcb83eea72)
2008-10-15 17:31:54 -07:00
Jeremy Huddleston
d13c3cbd43 XQuartz: Some motion made towards supporting fullscreen.
(cherry picked from commit 99be3d68b6)
2008-10-08 18:45:17 -07:00
Jeremy Huddleston
dc166bf642 XQuartz: Fixed EXTRA_DIST for new GL files.
(cherry picked from commit a11c905203)
2008-10-08 18:45:13 -07:00
George Staplin
8033279294 XQuartz: GL: setVisualConfigs() copied the behavior of indirect.c which is wrong, with regard to the handling of xcalloc failure.
Use ErrorF for an error message after an xcalloc failure, and return instead of falling through to GlxSetVisualConfigs, or abort()ing at the test branch.
(cherry picked from commit 1056700971)
2008-10-08 18:45:09 -07:00
Jeremy Huddleston
f1fec6f323 XQuartz: Call setVisualConfigs in InitOutput, and only when GLXEXT is defined.
(cherry picked from commit 97173d4eda)
2008-10-08 18:45:04 -07:00
George Staplin
52accec7db XQuartz: GL: Add the proper license information to the new files, and add more commentary to setVisualConfigs().
(cherry picked from commit 190a3d5e5d)
2008-10-08 18:44:28 -07:00
George Staplin
63abdf6115 XQuartz: GL: Add the new C code to the Makefile.am.
Commit the darwin.c changes I missed in the last commit, for calling
setVisualConfigs().
(cherry picked from commit eb3c014e17)
2008-10-08 18:44:24 -07:00
George Staplin
a8f5d422c9 XQuartz: GL: Provide code for getting the capabilities of the underlying system's CGL.
Add a setVisualConfigs that is called before the fbScreenInit, to setup the __GLXvisualConfigs.
(cherry picked from commit fc86f9e448)
2008-10-08 18:44:21 -07:00
Jeremy Huddleston
2998e48be3 Xquartz: Fix parallel builds
(cherry picked from commit 1fe7298a3b)
2008-10-08 18:44:17 -07:00
Adam Jackson
8a5b89e8e1 xalloc+memset(0) -> xcalloc 2008-10-06 15:36:51 -04:00
Jeremy Huddleston
aacac3edac XQuartz: Bumped bundle version to 2.3.2 for beta1
(cherry picked from commit 2021c4c4e7)
2008-10-04 21:17:14 -07:00
Jeremy Huddleston
ed3134918d XQuartz: pbcopy: Re-enabled some code I commented out for testing
(cherry picked from commit 9b5d114092)
2008-10-04 21:17:09 -07:00
Jeremy Huddleston
b3a971d8b5 XQuartz: xpbproxy: Support some of the preference toggles from X11.app, cleaned up CLIPBOARD_MANAGER atom management.
(cherry picked from commit f7673bb4de)
2008-10-04 21:17:02 -07:00
Jeremy Huddleston
fc35c7a2e2 XQuartz: GLX - enable_stereo defaults option should work now
(cherry picked from commit 3a6898f487)
2008-10-04 21:16:54 -07:00
Adam Jackson
e6b1c1fada const cleanup 2008-10-03 17:51:19 -04:00
George Peter Staplin
7bb73a9513 XQuartz: pbproxy: Possibly fix a memory leak by using an [NSApp run] loop,
instead of calling CFRunLoopRun() directly.  The leak wasn't reproducible on
this machine, but someone was able to produce a leak trace with Instruments
that indicates it was leaking in the CFRunLoopRun() path.

x-input.m: dequeue and ignore events when pbproxy_active is false.

x-selection.h: add an is_active method that is used by x-input.m to ignore
events.

x-selection.m: Handle nearly every preference, except for primary_on_grab,
which I don't really understand yet.
(cherry picked from commit 4d51ad851e)
2008-10-03 11:14:49 -07:00
Jeremy Huddleston
2a5ce41f03 XQuartz: Use "pointer" and "pen" for device names to please GDK.
(cherry picked from commit 00ca0f4d83)
2008-10-03 11:14:43 -07:00
Jeremy Huddleston
d3f597a986 XQuartz: Workaround for initial pressure/tilt being sent as 0 with motion during the proximity event
(cherry picked from commit 9a91d770a6)
2008-10-03 11:14:40 -07:00
Jeremy Huddleston
1657dfb843 XQuartz: Using absolute ranges for pointer location to increase resolution and better support tablets.
(cherry picked from commit d79ccb45f6)
2008-10-03 11:14:38 -07:00
Jeremy Huddleston
88bb8c6f48 XQuartz: Removed resolved comment about localization.
(cherry picked from commit 8ed5faf058)
2008-10-03 11:14:34 -07:00
George Peter Staplin
b1d0b19661 XQuartz: pbproxy: Make the signal handler safer by using _exit, and only exit.
Remove some unnecesssary headers.

Remove some dead code that was never called or used in pbproxy.

Make use of an NSAutoreleasePool in x_init.  It could potentially cause a leak
on a startup without this.

Start adding reload_preferences to the x_selection class, as well as event
handling for that.
(cherry picked from commit 602e8ba8f7)
2008-10-03 11:14:30 -07:00
Jeremy Huddleston
ecd260143c XQuartz: Added some localizable strings that were missing.
(cherry picked from commit 2c8205ea8b)
2008-10-03 11:14:28 -07:00
Jeremy Huddleston
aae878b890 XQuartz: Actually send the pointer event from the pen even if it happes to actually have 0 pressure and 0 tilt.
(cherry picked from commit f415837619)
2008-10-03 11:13:03 -07:00
Jeremy Huddleston
b7ad86ff8a Xquartz: xpbproxy: Split out app-specific stuff to app-main.m in prep for making this into a thread.
(cherry picked from commit c2012138a5)
2008-10-03 11:12:57 -07:00
Jeremy Huddleston
5446adebfb XQuartz: Send AppleWMReloadPreferences where appropriate.
(cherry picked from commit 490cbe9888)
2008-10-03 11:12:49 -07:00
Jeremy Huddleston
6020c3fbfe XQuartz: Added a --enable-integrated-xpbproxy configure option for building xpbproxy as an app or as a thread.
(cherry picked from commit 8edc5fb38c)
(cherry picked from commit 88033a66a5)
2008-10-03 11:11:47 -07:00
George Peter Staplin
eb8be3e90a XQuartz: pbproxy: Fix another STRING bug.
Fix the usage of the NSString cStringUsingEncoding: - it doesn't NUL
terminate the string, which lead to a bus error.  So, we use
lengthOfBytesUsingEncoding: to get the length in bytes instead of
strlen().
(cherry picked from commit 6333d619e7)
2008-09-26 12:31:33 -07:00
George Peter Staplin
edfa3f8233 XQuartz: pbproxy: Fix a bug that rxvt brought out in STRING copying. Now I can copy and paste to/from rxvt correctly.
(cherry picked from commit 82a4dc5f0f)
2008-09-26 12:31:29 -07:00
Jeremy Huddleston
12a59c44cb XQuartz: Fixed threading issue with TSM.
(cherry picked from commit 93ab4e0071)
2008-09-26 12:31:21 -07:00
Jeremy Huddleston
ee87c9b024 XQuartz: pbproxy: Removed stray SPI include.
(cherry picked from commit 2fb2bc77b8)
2008-09-26 12:31:18 -07:00
George Peter Staplin
591cc57627 XQuartz: pbproxy: Fix 3 paths that could leak memory.
2 of the paths leaked, when INCR transfers were done.  Now we
are leak free according to the leaks program for all transfers
I have tried so far.
(cherry picked from commit aa98db576b)
2008-09-26 12:31:12 -07:00
George Peter Staplin
586fbc91df XQuartz: pbproxy: Fix NSObject memory leaks by properly using the
NSAutoreleasePool.   Now the usage is consistent.  In x_input_run()
we create a pool, and release it after processing the XEvents.

Add some getpid() output to main for debugging.  It needs a bit more
testing before the next release.

Don't retain the NSPasteboard as the old code did.  That may have
contributed to the leak, and it made it so that we needed the
NSAutoreleasePool created in main().

Remove the _known_types, and _pasteboard instance variables from
the x_selection class.  They aren't needed anymore.

The leaks program now indicates 0 leaks after some usage.  I want
to test further, but this seems much better, and my memory usage
graph indicates it's not growing.
(cherry picked from commit b245d84a72)
2008-09-26 12:31:06 -07:00
George Peter Staplin
238999cfc9 XQuartz: pbproxy: Add a comment to pbproxy.h about how the DB()
macro causes a leak (according to the leaks program).

Attempt to fix several other leaks with release method calls.
For some reason the process still grows more than it should...

I will need to use some better methods than leaks, and malloc_history
I suspect.  Whatever is leaking, it's hard to find.  I need to isolate
the cases more.

Add a missing image/jpeg branch.

Remove read_prop_32 - it's not used.
(cherry picked from commit 63a680354d)
2008-09-26 12:31:01 -07:00
Jeremy Huddleston
af0d5e2ef7 XQuartz: 64bit crash fix ... don't pass pointers through xe.
(cherry picked from commit 5f1265b82e)
2008-09-21 17:40:42 -07:00
George Peter Staplin
852a0b0dde XQuartz: pbproxy: Add an X error handler that returns 0.
Move the struct atom_list into the x-selection class, so that it's
no longer a global variable named atoms.  This may ease pthread
integration and reduce the chances of symbols conflicting.
(cherry picked from commit c1403c713c)
2008-09-21 17:40:42 -07:00
George Peter Staplin
7fa6fc5ad0 XQuartz: pbproxy: Fix a bug that occured when a PICT format was available.
We may need another branch to convert a PICT to a PNG or JPEG.  For now
TIFF works well in all of the test image copying apps when converted to
PNG or JPEG with an NSBitmapImageRep class.
(cherry picked from commit adf339d8f9)
2008-09-21 17:40:41 -07:00
George Peter Staplin
f67490ceb5 XQuartz: pbproxy: Make the proxy handle copy request races, and PRIMARY
INCR transfers mixed with a CLIPBOARD change.

Fix a bug with some UTF-8 transfers.  I can only guess that my UTF-8
tests before were inadequate.  I can now copy/paste any characters between
uxterm and Textedit.app.
(cherry picked from commit 7ca1532e8e)
2008-09-21 17:40:41 -07:00
Jeremy Huddleston
b666ffd781 XQuartz: "Disable" the text when syncing is disabled.
(cherry picked from commit 7713d7ab66)
2008-09-21 17:40:41 -07:00
Jeremy Huddleston
dba290ec23 XQuartz: Added a preferences UI for pbproxy options.
(cherry picked from commit d76cca5e1e)
2008-09-21 17:40:35 -07:00
George Peter Staplin
a928cae57b XQuartz: pbproxy: Add a missing include of Xutil.h. Another header
seems to have done this before, but correctness matters.
(cherry picked from commit 1b4987e779)
2008-09-21 17:40:16 -07:00
George Peter Staplin
749bdf19b2 XQuartz: pbproxy: Add COMPOUND_TEXT handling. Do misc. cleanups with testing
to verify that the behavior didn't change.

main.m: XInternAtom compound_text, and atom_pair.

pbproxy.h: Add compound_text and atom_pair to the struct atom_list.

x-selection.m: Add an #include of Xutil.h.  Refactor the reply struct
initialization to be done in a common place.  Add send_reply: to simplify
the code a bit more.  Add send_compound_text: which handles the
COMPOUND_TEXT type.  Add the beginnings of a send_multiple:.  Change
handle_image:extension: to handle_image:.  The extension: message isn't
needed anymore.
(cherry picked from commit 1e9460abdf)
2008-09-21 17:40:16 -07:00
George Peter Staplin
00bfbee59f XQuartz: pbproxy: pbproxy now responds to selection request events.
We can now copy and paste images to and from X11.  Text copying and
pasting works as well.

The NSPasteboard can contain TIFF or PICT images, and pbproxy will
translate to an image/png or image/jpeg request, and list those in the
TARGETS.

I added a description of the basic design at the top of x-selection.m.

I removed the request_data x_selection class struct.  It's not needed.
(cherry picked from commit 4a8daf8846)
2008-09-21 17:40:16 -07:00
George Peter Staplin
811e9f5e9e XQuartz: pbproxy: Use an NSBitmapImageRep to convert an "image/png" selection
to a TIFFRepresentation for use with NSPasteboard.

This has been tested with the Gimp and works with some minor quartz-wm changes.
The Finder clipboard shows the image updates after an Edit -> Copy.
(cherry picked from commit 12912adaee)
2008-09-21 17:40:16 -07:00
Jeremy Huddleston
d8d555bac7 XQuartz: Don't enable 8bit visuals in the TrueColor server, since it's not working yet
(cherry picked from commit 1317c8ff94)
2008-09-21 17:40:15 -07:00