Commit Graph

32 Commits

Author SHA1 Message Date
Peter Hutterer
675f4a8525 Abstract valuator masks through a set of APIs.
This commit introduces an abstraction API for handling masked valuators. The
intent is that drivers just allocate a mask, set the data and pass the mask
to the server. The actual storage type of the mask is hidden from the
drivers.

The new calls for drivers are:
    valuator_mask_new()     /* to allocate a valuator mask */
    valuator_mask_zero()    /* to reset a mask to zero */
    valuator_mask_set()     /* to set a valuator value */

The new interface to the server is
    xf86PostMotionEventM()
    xf86PostButtonEventM()
    xf86PostKeyboardEventM()
    xf86PostProximityEventM()

all taking a mask instead of the valuator array.

The ValuatorMask is currently defined for MAX_VALUATORS fixed size due to
memory allocation restrictions in SIGIO handlers.

For easier review, a lot of the code still uses separate valuator arrays.
This will be fixed in a later patch.

This patch was initially written by Chase Douglas.

Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
2010-10-22 11:02:48 +10:00
Mikhail Gusarov
7287ef9e6c Remove unnecessary parentheses around return values in functions
This patch was generated by the following Perl code:

perl -i -pe 's/([^_])return\s*\(\s*([^(]+?)\s*\)s*;(\s+(\n))?/$1return $2;$4/g;'

Signed-off-by: Mikhail Gusarov <dottedmag@dottedmag.net>
Reviewed-by: Jamey Sharp <jamey@minilop.net>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
Signed-off-by: Keith Packard <keithp@keithp.com>
2010-06-10 06:42:42 -07:00
Keith Packard
2dc138922b Rename region macros to eliminate screen argument
This is a combination of a huge mechanical patch and a few small
fixups required to finish the job. They were reviewed separately, but
because the server does not build without both pieces, I've merged
them together at this time.

The mechanical changes were performed by running the included
'fix-region' script over the whole tree:

$ git ls-files | grep -v '^fix-' | xargs ./fix-region

And then, the white space errors in the resulting patch were fixed
using the provided fix-patch-whitespace script.

$ sh ./fix-patch-whitespace

Thanks to Jamey Sharp for the mighty fine sed-generating sed script.

The hand-done changes involve removing functions from dix/region.c
that duplicate inline functions in include/regionstr.h, along with
their declarations in regionstr.h, mi.h and mispans.h.

Reviewed-by: Jamey Sharp <jamey@minilop.net>
Signed-off-by: Keith Packard <keithp@keithp.com>
2010-06-05 18:59:00 -07:00
Peter Hutterer
008658049c xnest: silence compiler warnings by typecasing properly.
Events.c: In function ‘xnestQueueKeyEvent’:
Events.c:112: warning: passing argument 2 of ‘mieqEnqueue’ from incompatible
pointer type
../../mi/mi.h:203: note: expected ‘union InternalEvent *’ but argument is of
type ‘struct xEvent *’
Events.c: In function ‘xnestCollectEvents’:
Events.c:141: warning: passing argument 2 of ‘mieqEnqueue’ from incompatible
pointer type
../../mi/mi.h:203: note: expected ‘union InternalEvent *’ but argument is of
type ‘struct xEvent *’
Events.c:150: warning: passing argument 2 of ‘mieqEnqueue’ from incompatible
pointer type
../../mi/mi.h:203: note: expected ‘union InternalEvent *’ but argument is of
type ‘struct xEvent *’
Events.c:160: warning: passing argument 2 of ‘mieqEnqueue’ from incompatible
pointer type
../../mi/mi.h:203: note: expected ‘union InternalEvent *’ but argument is of
type ‘struct xEvent *’
Events.c:193: warning: passing argument 2 of ‘mieqEnqueue’ from incompatible
pointer type
../../mi/mi.h:203: note: expected ‘union InternalEvent *’ but argument is of
type ‘struct xEvent *’

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-03 12:01:23 +10:00
Julien Cristau
9651cd8d7a xnest: ANSI cleanups 2009-01-11 08:54:11 +01: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
Julien Cristau
add946daed Nuke unused variables 2008-10-26 11:44:10 +01:00
Peter Hutterer
c68ca0c7b2 xnest: switch to using EventList rather than xEvents. 2008-06-08 23:28:28 +09:30
Peter Hutterer
6fb76acc45 mi: remove miPointerUpdate() -> replaced by miPointerUpdateSprite().
In the xnest and vfb DDX we don't need the call anyway, it's performed by
mieqProcessInputEvent.
2008-05-16 21:10:00 +09:30
Peter Hutterer
fd06e8f8c1 Merge branch 'master' into dcdc_rework
Conflicts:

	Xext/xevie.c
	dix/dispatch.c
2008-04-07 07:56:41 +09:30
Adam Jackson
605e6764df Fix Motif menu drawing in Xnest.
See also Red Hat bug #229350, OpenSolaris bug #6366490.
2008-03-03 15:45:17 -05:00
Peter Hutterer
d4dad6f84f Merge branch 'master' into mpx
Conflicts:

	configure.ac
	dix/events.c
	hw/xfree86/common/xf86Xinput.c
2007-04-12 11:11:03 +09:30
Stefan Huehner
1f6741db19 Bug #10560: Code-Cleanup: function declarations () -> (void)
X.Org Bugzilla #10560: <https://bugs.freedesktop.org/show_bug.cgi?id=10560>
Patch #9511 <https://bugs.freedesktop.org/attachment.cgi?id=9511>
2007-04-09 14:33:15 -07:00
Peter Hutterer
ae3c24da34 dix: Moving SpriteRec into DeviceIntRec
removing global sprite structure
	beginning to remove MPX ifdefs

xnest:  Fix to make xnest compile again
2006-12-11 18:09:59 +10:30
Daniel Stone
2f33f4065d Xnest: port to new input API
Port Xnest to Get{Pointer,Keyboard}Events, plus the new mieq API.
2006-10-23 02:52:35 +03:00
Adam Jackson
0aaac95b0d Remove RCS tags. Fix Xprint makefile braindamage. 2006-07-21 17:56:00 -04:00
Kevin E Martin
6b546d0ec0 Add #include <xnest-config.h> to the Xnest source files for modularization. 2005-07-14 03:36:44 +00:00
Daniel Stone
0bb669638f Change <X11/misc.h> and <X11/os.h> to "misc.h" and "os.h". 2005-07-03 08:53:54 +00:00
Adam Jackson
e6602b041f Bug #3546: Use MAP_LENGTH instead of a magic number. (Mark McLoughlin) Bug
#3664: Further fixes to Xnest modifier state handling. (Mark
    McLoughlin)
2005-07-02 17:02:23 +00:00
Daniel Stone
9b1debcdb6 Change all misc.h and os.h references to <X11/foo.h>. 2005-07-01 22:43:43 +00:00
Adam Jackson
aa7fb99bc7 Bug #3030: Fix Xnest keyboard state handling. (Mark McLoughlin) 2005-06-25 21:28:48 +00:00
Adam Jackson
f5aeaa7710 Bug #3513: Silence unhandled event messages from Xnest when running with
-parent. (Mark McLoughlin)
2005-06-13 00:09:23 +00:00
Daniel Stone
292c4cff26 Fix includes right throughout the Xserver tree:
change "foo.h" to <X11/foo.h> for core headers, e.g. X.h, Xpoll.h;
change "foo.h", "extensions/foo.h" and "X11/foo.h" to
    <X11/extensions/foo.h> for extension headers, e.g. Xv.h;
change "foo.[ch]" to <X11/Xtrans/foo.[ch]> for Xtrans files.
2005-04-20 12:25:48 +00:00
Keith Packard
fd439afdfe Add COMPOSITE change to fbCopyWindow (not needed yet)
Xnest was half-using midispcur and doing a bad job of it. Replace all of
    that code with mipointer which does a lot of the work.
Support DDXen which don't provide GetWindowPixmap, or which return NULL for
    the root pixmap.
2004-08-11 22:40:14 +00:00
Egbert Eich
2fb5886200 Merging XORG-CURRENT into trunk 2004-04-23 19:54:30 +00:00
Egbert Eich
dae90c3af9 Importing vendor version xf86-4_4_99_1 on Sun Mar 14 00:26:39 PST 2004 2004-03-14 08:34:49 +00:00
Egbert Eich
867451f1ab Importing vendor version xf86-4_4_0 on Wed Mar 3 04:09:24 PST 2004 2004-03-03 12:12:50 +00:00
Egbert Eich
df0313d35b readding XFree86's cvs IDs 2004-02-26 13:36:15 +00:00
Egbert Eich
147aae87fd Importing vendor version xf86-4_3_99_903 on Wed Feb 26 01:21:00 PST 2004 2004-02-26 09:23:53 +00:00
Kaleb Keithley
adc7f9a4eb XFree86 4.3.99.16 Bring the tree up to date for the Cygwin folks 2003-11-25 19:29:01 +00:00
Kaleb Keithley
d568221710 XFree86 4.3.0.1 2003-11-14 16:49:22 +00:00
Kaleb Keithley
ded6147bfb R6.6 is the Xorg base-line 2003-11-14 15:54:54 +00:00