Commit Graph

289 Commits

Author SHA1 Message Date
Jeremy Huddleston
c0da576d49 XQuartz: Don't warp the pointer on server start for XQuartz 2008-09-04 14:59:10 -07:00
Jeremy Huddleston
8b8e0aea6f XQuartz: Removed NewCurrentScreen debugging spew. 2008-09-03 03:14:22 -07:00
Jeremy Huddleston
4b7c684371 XQuartz: More debugging spew for tracking down the NewCurrentScreen crash. 2008-08-30 14:55:36 -07:00
Jeremy Huddleston
61d140c66c XQuartz: Made NewCurrentScreen debugging a little safer 2008-08-30 09:10:27 -07:00
Jeremy Huddleston
aaf0f71db1 XQuartz: Added debugging output to the crash log to help track down two crashes, since people don't often report their system.log spew. 2008-08-29 19:43:13 -07:00
Jeremy Huddleston
cdadce8816 XQuartz: Added debugging for NewCurrentScreen crash. 2008-08-19 02:00:35 -07:00
Peter Hutterer
c6d92c5206 dix: don't try to create events if we don't have a screen. #16898
A NULL screen may happen during server shutdown, when the output has been shut
down but the devices still generate events.

X.Org Bug 16898 <http://bugs.freedesktop.org/show_bug.cgi?id=16898>
(cherry picked from commit 465a9bb96e)
2008-08-08 01:17:24 -07:00
Jeremy Huddleston
c407bae5b8 Merge commit 'origin/server-1.4-branch' into xorg-server-1.4-apple 2008-06-04 12:20:35 -07:00
Sascha Hlusiak
7982aaa7f0 Fix getValuatorEvents to compute number of valuators correctly. 2008-05-30 19:38:49 +02:00
Jeremy Huddleston
91dd6c47aa Merge commit 'origin/server-1.4-branch' into xorg-server-1.4-apple 2008-05-08 16:56:54 -07:00
Magnus Vigerlöf
b1145a6b42 dix: Move motion history update until after screen crossing and clipping
Cross screen and clip the coordinates before updating the motion history
so that it will have the same contents as the events that are reported.
(cherry picked from commit a56ef7aaa4)
2008-05-07 19:22:41 +02:00
Magnus Vigerlöf
a68d0ef4a6 dix: Skip call to clipAxis for relative core-events
Relative events that generates both core and extention
events will have its axis cliped and screen changed by
miPointerSetPosition when the events are processed. For
absolute and non core-generating relative events the
axis must be clipped if we shouldn't end up completely
outside the defined ranges (if any).
(cherry picked from commit a0284d577a)
2008-05-07 19:22:35 +02:00
Magnus Vigerlöf
b51ca35a75 Bug # 10324: dix: Add scaling of X and Y on the reported pointer-events
Restore the rescaling code for x and y axis when generating
motion events.
(cherry picked from commit d9e23c4ff1)
2008-05-07 19:22:29 +02:00
Magnus Vigerlöf
1d79ba8193 Bug # 10324: dix: Allow arbitrary value ranges in GetPointerEvents
Don't use a possitive value as a marker for if a max-value
is defined on the valuators. Use the existence of a valid
value range instead. This will also make it possible to
define arbitrary start and end-values for min and max as
long as min < max.
(cherry picked from commit f04c083869)
2008-05-07 19:22:23 +02:00
Magnus Vigerlöf
7fa7031cfa dix: Always add valuator information if present
Send valuator information for all event types, not only for
MotionEvents and absolute button events.
(cherry picked from commit 12e5324032)
2008-05-07 19:22:16 +02:00
Jeremy Huddleston
34ec4bd6ac Dix: Cleaned up sanity checking in Get{Pointer,Keyboard}Events
XQuartz was crashing because the Appkit thread was trying to GetXXXEvents while the Xserver thread was exiting.
This adds some more sanity checks and avoids that crash
2008-04-30 17:30:32 -07:00
Jeremy Huddleston
c861fe00e1 XQuartz: Cleaned up startup and thread creation a tad. 2008-04-26 19:17:42 -07:00
Jeremy Huddleston
e41ccc6470 Fixed dixLookupClient to work with client=NullClient as it did in the 1.3 branch 2008-04-21 20:00:30 -07:00
Jeremy Huddleston
a56aca1a6b Removed some of our debugging spam from dix main. 2008-04-17 12:32:03 -07:00
Jeremy Huddleston
df21312c8b XQuartz: Fix issue where clicking on an X11 window might send that event to an X11 window in another space.
(cherry picked from commit 2e78818232)
2008-04-08 16:59:56 -07:00
Ben Byer
2143182ba4 shovelling code around ... 2008-03-31 21:34:17 -07:00
Jeremy Huddleston
509827a598 Merge branch 'server-1.4-branch' into xorg-server-1.4-apple 2008-03-01 17:10:42 -08:00
Kristian Høgsberg
bcbfd619f8 Don't break grab and focus state for a window when redirecting it.
Composite uses an unmap/map cycle to trigger backing pixmap allocation
and cliprect recomputation when a window is redirected or unredirected.
To avoid protocol visible side effects, map and unmap events are
disabled temporarily.  However, when a window is unmapped it is also
removed from grabs and loses focus, but these state changes are not
disabled.

This change supresses the unmap side effects during the composite
unmap/map cycle and fixes this bug:

  http://bugzilla.gnome.org/show_bug.cgi?id=488264

where compiz would cause gnome-screensaver to lose its grab when
compiz unredirects the fullscreen lock window.
2008-02-20 22:15:11 +01:00
Jeremy Huddleston
1b22192e50 Merge branch 'server-1.4-branch' into xorg-server-1.4-apple 2008-02-13 23:48:02 -08:00
Peter Hutterer
e98027c3ac dix: set the correct number of valuators in valuator events.
(first_valuator + num_valuators) must never be larger than the number of axes,
otherwise DIX freaks out. And from looking at libXI, anything larger than 6 is
wrong too.
(cherry picked from commit 9f6ae61ad1)
2008-01-29 14:46:30 +11:00
Jeremy Huddleston
d6e234f96d Merge branch 'server-1.4-branch' into xorg-server-1.4-apple 2008-01-17 09:48:14 -08:00
Matthieu Herrb
f09b8007e7 Fix for CVE-2008-0006 - PCF Font parser buffer overflow. 2008-01-17 17:02:52 +01:00
Jeremy Huddleston
c9dff90ce8 Merge branch 'server-1.4-branch' into xorg-server-1.4-apple 2008-01-03 13:26:22 -08:00
Daniel Stone
102c012c20 Input: Don't reinit devices
If a device is already initialised (i.e. the virtual core devices) during
IASD, don't init them again.  This fixes a leak.
(cherry picked from commit 1f6015c8fe62c28cfaa82cc855b5b9c28fd34607)
2007-12-28 15:51:05 +02:00
Jeremy Huddleston
9f5507a3c5 Merge branch 'server-1.4-branch' into xorg-server-1.4-apple 2007-12-20 19:04:33 -08:00
Jeremy Huddleston
be027ea7ea Xquartz: General Cleanup
General code cleanup, whitespace, dead code removal, added missing prototypes.
Made Xquartz come to foreground later in startup, so it doesn't appear for Xquartz -version
(cherry picked from commit 36922e8ff4)
2007-12-20 13:17:56 -08:00
Ben Byer
b709718a69 Silence FPE error message; according to ajax, this bug is known
but not worth fixing.
(cherry picked from commit 1033eb0336)
2007-12-14 15:22:31 -08:00
Bartosz Fabianowski
446efcc554 Input: Fix proximity events with valuators
Initialise num_events to 1, so we always send a proximity event, and then
optionally valuator events.  Also make sure mieq can deal with valuator
events sent after proximity events.
(cherry picked from commit 2dcfab37d38c0c72e9be7cc724047405c8029e88)
2007-12-07 02:38:44 +00:00
Jeremy Huddleston
e261f829e4 DIX: Remove remaining alloca calls 2007-11-20 16:15:59 -08:00
Jeremy Huddleston
1b048cc5d1 Dix: Re-ebable ErrorF reporting of incorrect refcount in FreeFontPath 2007-11-20 16:05:19 -08:00
Ben Byer
cee516e142 From Jeremy Huddleston:
1) Fixed a bug where XQUARTZ was #defined when auto but not when --enable-xquartz
2) Cleaned up missing #includes and function prototypes.
3) Fixed some invalid C syntax problems
4) Removed a bunch of dead code
5) Cleaned up code to prevent some warnings
6) Bugfix in xpr/x-hook.c - looks like someone just forgot to finish writing code for hook_remove()... I only noticed it because gcc -Wall complained about reaching the end of a non-void function... lucky for us gcc is smarter than we are.
2007-11-20 04:07:22 -08:00
Ben Byer
cad8133cce More XDarwin cleanup / dead code removal from Jeremy 2007-11-20 04:02:15 -08:00
Ben Byer
c213749b19 fixes to allow Xvfb and Xephyr to be built if you build with --disable-xdarwin 2007-11-20 03:41:29 -08:00
Ben Byer
d01986d5a9 DIX Fix: QueryFontReply packets can be too big to be allocated on the stack 2007-11-20 03:18:42 -08:00
Ben Byer
616ba3c7d6 finished committing downstream changes 2007-11-20 03:15:02 -08:00
Daniel Stone
f3a5d67688 GetKeyboardEvents: Reject out-of-range keycodes (bug #12528)
We can only deal with keycodes between 8 and 255, so make sure that we never
accept anything out of this range.
(cherry picked from commit 0e800ca465)
2007-11-17 22:07:08 +01:00
Naoki Hamada
35bf7c738a Input: Fix key down test (bug #12858)
Fix the botched previous key_is_down test, which would give false positives.
Also move key_autorepeats to a separate inline function.
(cherry picked from commit 242f56f722)
2007-11-17 22:06:51 +01:00
Daniel Stone
0050d7e78d DIX: XKB: Set xkbInfo to NULL as well as freeing it (bug #10639)
XkbRemoveResourceClient wants to access xkbInfo if it exists, so make
sure we NULL it after freeing it.  It doesn't make much sense to move
the RemoveResourceClient call first, as there's not much point in
notifying clients while we're shutting the server down anyway.
(cherry picked from commit 23023af1c5a33546a2027cad23a946a2882e9893)
2007-11-06 14:52:11 +00:00
Daniel Stone
ad05d5d035 Input: Generate XKB mapping changes for all core-sending devices (bug #12523)
When we change the mapping on a core device, make sure we propagate this
through to XKB for all extended devices as well.
(cherry picked from commit 27ad5d74c2)
2007-10-31 01:07:17 +02:00
Peter Hutterer
5909fb3c40 dix: don't compress motion events from different devices (EventEnqueue)
(cherry picked from commit 8840829ab9)
(cherry picked from commit 352c5a3112)
2007-10-30 00:58:51 +02:00
Peter Hutterer
600752bece dix: add XI event support to FixKeyState.
FixKeyState needs to be able to handle XI events, otherwise we get "impossible
keyboard events" on server zaps and other special key combos.
(cherry picked from commit 5ee409794e)
(cherry picked from commit 8d3d027062)
2007-10-30 00:58:43 +02:00
Daniel Stone
f73fd98a86 Fix key repeats during VT switch.
Add keyc->postdown, which represents the key state as of the last mieqEnqueue
call, and use it when we need to know the posted state, instead of the
processed state (keyc->down).  Add small functions to getevents.c to query and
modify key state in postdown and use them all through, eliminating previously
broken uses.
(cherry picked from commit 81c28ffd2b)
2007-09-05 17:47:50 -07:00
Eric Anholt
70ed110538 Fix server version reporting to be the server package version.
Previously, the server version reported by xdpyinfo and Xorg -version would
bear some vague resemblance to a X.Org katamari version, but in the presence
of modularization (and client-server relationships with different katamari
versions on each side) those numbers don't really make sense.  Instead, just
report the package version.

When branching a stable branch, master's version should be immediately updated
to the endpoint of the stable branch plus a snapshot of 1 (for example,
1.4.0.1 after server-1.4-branch).  The stable branch should then be changed to
RC0 at that time (1.3.99.0, for example).

This scheme was partially attempted for server 1.3, but lacked the appropriate
master updates, thus why it had to be revisited now.  While here, we can also
remove a lot of versioning complexity since everything is based on the package
version.

(cherry picked from commit 47300ed2be)
2007-09-05 13:31:50 -07:00
Matthieu Herrb
3e9ecdcb13 Remove an extra cast.
Thou should not apply patches manually without testing.
(cherry picked from commit a66c0f1dca)
2007-08-31 10:00:10 -07:00
Otto Moerbeek
a964d54128 A high resolution device that's moving fast can potentially generate
an int overflow, making dx*dx+dy*dy negative. Now pow(negative,
non-integer) yields NaN, so you loose.  Use fp math to avoid that.
(cherry picked from commit 12d27cf33c)
2007-08-31 09:59:53 -07:00