Eamon Walsh
5e334f06a1
Remove instances of macros VERIFY_GEOMETRABLE and VERIFY_GC.
2006-12-14 18:27:09 -05:00
Eamon Walsh
51b69ff499
Remove instances of macro SECURITY_VERIFY_DRAWABLE.
2006-12-14 17:53:43 -05:00
Eamon Walsh
ab1886df73
Add new, combined dix lookup functions (tweak).
2006-12-14 15:42:19 -05:00
Eamon Walsh
60cdc592fe
Add new, combined dix lookup functions.
2006-12-14 14:46:03 -05:00
Eamon Walsh
6c46645cfc
Naming change: Security*Access -> Dix*Access
2006-12-14 14:45:42 -05:00
Daniel Stone
0c5dab5c8e
config: move config.h to hotplug.h
...
Also, move configInitialise to after OsInit, since the next commit will
make it use a timer.
2006-12-06 23:24:24 +02:00
Daniel Stone
72e7f2ac6c
GetPointerEvents: always send valuator events for MotionNotify
...
Always chase a DeviceMotionNotify event with a DeviceValuator, which is
not required in the spec, but will silently break the lib if you don't
include.
2006-12-06 23:24:24 +02:00
Daniel Stone
c458a70d65
GetPointerEvents: fix typo
...
Fix typo that resulted in inverted axes when using an absolute positioning
device that didn't report y, and thus relied on the previous value.
2006-12-06 23:24:24 +02:00
Daniel Stone
2f0a800ffd
config: move to block/wakeup handler
2006-12-06 23:24:24 +02:00
Daniel Stone
f2903c12bb
SyntheticMotion: don't dereference sprite.screen when not using Xinerama
...
(cherry picked from aa052e43c6c293e14f78837e00c6b7581f9713bb commit)
2006-12-06 23:24:23 +02:00
Eamon Walsh
ac90ce58ba
Naming change: Security*Operation -> Xace*Operation
2006-12-01 21:15:41 -05:00
Eamon Walsh
f44f14fe56
Define calls away when not building XACE, allowing ifdef's to be removed.
2006-12-01 21:15:41 -05:00
Alan Coopersmith
8956f63a94
Tell automake to STFU about the *.O files
...
automake will not stop whining about the *.O files not being in normal library
name format, so just tell automake they are PROGRAMS so it builds them without
bitching.
2006-11-30 19:53:29 -08:00
Eric Anholt
b4b0d901d9
Merge branch 'randr-1.2'
...
Conflicts:
dix/events.c
dix/getevents.c
hw/xfree86/common/xf86Mode.c
hw/xfree86/dri/Makefile.am
hw/xfree86/os-support/drm/xf86drm.c
hw/xfree86/os-support/xf86drm.h
2006-11-27 15:43:15 -08:00
Alan Hourihane
33ff4cec5f
Issue CloseDownDevices() in os/log.c and remove from dix/main.c.
...
This ensures that all calls to FatalError() will shutdown the input devices.
2006-11-21 21:23:17 +00:00
Alan Hourihane
c9a5f9d391
Shutdown input devices if FatalError occurs during startup.
...
Fixes Xdmx problems when the input device has been initialized
and the keyboard map has been destroyed.
2006-11-18 19:55:42 +00:00
Jurij Smakov
acb5ff4c73
ffs: handle 0 argument (bug #8968 )
...
Handle an argument of 0 in ffs(), instead of looping indefinitely.
Add an ffs prototype to dix.h, and add includes to ffs.c.
(cherry picked from 34164e551e4c3909322d50b09835ca4ac1d49d68 commit)
2006-11-11 14:13:56 +02:00
Daniel Stone
e7900d68c3
remove trailing whitespace
...
Whitespace police in full effect.
2006-11-08 15:36:47 +02:00
Daniel Stone
b5438f7fb2
Get*Events: massive reorganisation
...
Reorganise the code logically, and put more comments in.
Clip valuators in proximity calls.
2006-11-08 15:30:03 +02:00
Daniel Stone
b55007d8cc
SyntheticMotion: don't dereference sprite.screen when not using Xinerama
2006-11-08 15:29:17 +02:00
Daniel Stone
f93d10ce9b
dix: remove staggeringly broken vendor workarounds
...
Dear SGI,
No.
Scant regards,
Daniel
2006-11-08 15:29:16 +02:00
Daniel Stone
c3ea1f7db4
dix/mi: still more warning fixes
...
Fix up prototypes for PrintChildren and PrintWindowTree in the dix.
Make miPrintRegion be unconditionally defined, and move the prototype into
regionstr.h.
Change a bunch of ScreenPtr pScreen = foo; to
ScreenPtr pScreen; pScreen = foo; in window.c, so we avoid unused variable
references (as inline REGION_* doesn't reference pScreen).
2006-11-08 15:29:16 +02:00
Daniel Stone
3a9b964258
dix: add missing prototypes
...
Add missing prototype for ffs, and include headers from ffs.c.
Move PostSyntheticMotion prototype to input.h.
2006-11-08 15:29:16 +02:00
Daniel Stone
6716488fa2
dix: remove unused debug code
2006-11-08 15:29:16 +02:00
Daniel Stone
51813d77bf
dix: remove unused variable
2006-11-08 15:29:15 +02:00
Laurence Withers
ae58d349c1
CreateColormap: fix return value (bug #7083 )
...
Return BadMatch when an unsupported visual type is given, not BadValue --
this is correct according to the spec.
2006-11-08 15:29:15 +02:00
Adam Jackson
05f1c30246
Merge branch 'autoconfig-for-7.2'
2006-11-07 18:42:54 -05:00
Keith Packard
1dcda4f3c5
Avoid dereferencing sprite.screen when Xinerama is not running. ( #8925 )
...
With Xinerama support built into the X server but not in use,
sprite.screen is NULL and yet the SyntheticMotion
macro would dereference it. Avoid that by just passing sprite.screen
to PostSyntheticMotion which can then dereference it when Xinerama is
enabled.
Also, define PostSyntheticMotion in dixevents.h and include dixevents.h in
getevents.c
2006-11-07 01:29:51 -08:00
Eamon Walsh
3d39c02fe6
More work on Bug #8875 : revert previous fix and try using client argument
...
instead of serverClient. Also don't use totalClientSize as it is not
initialized until after the first call to InitClient.
2006-11-06 21:25:52 -05:00
Alan Coopersmith
49a26681b2
Add DTrace probe points for X server <-> client communications
...
See http://people.freedesktop.org/~alanc/dtrace/ for more details
2006-11-03 12:54:43 -08:00
Alan Coopersmith
58bf9a142d
PostSyntheticMotion needs to be extern, not static, since it's in getevents.c
2006-11-02 14:43:02 -08:00
Daniel Stone
81728558a0
input: add non-keyboard bell ringing function
...
Add a generic 'ring the bell' function (console bell on Linux and BSD,
/dev/audio on Solaris), and add DDX functions for this. Make this the
core keyboard's bell.
Port Xvfb and Xnest to this.
Port XFree86 to this, with OS-specific hooks for Linux, BSD, and Solaris
taken from foo_io.c in the old layer.
2006-11-01 23:10:26 +02:00
Daniel Stone
196c5836f4
CoreKeyboardProc: annotate with FIXME
...
Setting an empty keymap by default isn't wildly useful.
2006-10-27 01:27:31 +03:00
Daniel Stone
f9a1e456f8
CoreKeyboardProc: don't leak keymap and modmap
...
SetKeySymsMap does a copy here, so try not to leak them.
2006-10-27 01:25:39 +03:00
Daniel Stone
85212eb504
getValuatorEvents: make sure we put MORE_EVENTS in the right places
...
Make sure we put MORE_EVENTS in with the device id if there are, in fact,
more valuator events coming.
2006-10-27 01:23:58 +03:00
Daniel Stone
aabc087998
GetPointerEvents: always ensure correct number of events
...
Ensure correct number of valuator events are returned, and that we always
increment events correctly.
2006-10-25 02:21:39 +03:00
Daniel Stone
b9e180e632
port all users to the new DIX motion history API
...
Port KDrive, Xvfb, and Xnest, as well as the virtual core devices, to the
new motion history API. Make GetPointerEvents also update the history.
2006-10-25 01:09:19 +03:00
Daniel Stone
5b38eb69cd
dix: add motion history support
...
Add motion history support (sort of based on the XFree86 DDX's
implementation) to the DIX.
2006-10-25 01:08:29 +03:00
Daniel Stone
11fb58be77
miscellaneous warning fixes
...
Use the correct type for time, and fix the mi prototype of EnqueueEvent.
2006-10-25 01:07:36 +03:00
Daniel Stone
cccf7ae0ff
GetProximityEvents: add (untested) function
...
Add untested first guess at what GetProximityEvents should look like.
2006-10-23 06:55:21 +03:00
Daniel Stone
35fa4ac12b
GetPointerEvents: break into separate functions
...
Break out clipAxis, clipValuators, and getValuatorEvents, into
separate functions, to be used by the proximity event code.
2006-10-23 06:23:45 +03:00
Daniel Stone
eec1822591
dix/getevents: move SyntheticMotion to getevents.c
...
Mostly, this is just a cheesy hack to ensure that getevents.o gets
included when linking. Sigh.
2006-10-23 02:48:30 +03:00
Daniel Stone
bc701a1429
dix/getevents: cosmetic cleanups, remove keymap copy from GKVE
...
Remove keymap copy from GetKeyboardValuatorEvents, as
SwitchCoreKeyboard now takes care of this for us.
Remove unused variable and function prototype.
Update comments to be as informative as possible.
2006-10-23 00:08:32 +03:00
Daniel Stone
be21630164
dix, Xi: make use of deviceid in DevicePresenceNotify
...
Use the deviceid and control fields in DevicePresenceNotify since
the last push to inputproto to send a DPN whenever a control changes
on a device.
2006-10-22 16:33:02 +03:00
Daniel Stone
77e724585f
minor formatting fixes
2006-10-22 11:45:12 +03:00
Zephaniah E. Hull
e26a494f41
Merge branch 'input-hotplug' of git+ssh://git.freedesktop.org/git/xorg/xserver
2006-10-21 04:26:14 -04:00
Zephaniah E. Hull
736b0d5078
DEVICE_TOUCHSCREEN becomes DEVICE_ABS_CALIB.
...
Update the DEVICE_ABS_CALIB stuff to include the new elements.
New DEVICE_ABS_AREA support.
dev->touchscreen becomes dev->absolute, with _CALIB and _AREA stuff in it.
Update xfree86 to compile with this, kdrive needs an update too.
2006-10-21 04:24:49 -04:00
Daniel Stone
aeba855b07
move keymap copy to event processing, from enqueuing
...
Move the keymap copying to event processing time (in
ProcessInputEvents), instead of being at event enqueuing time.
Break SetCore{Pointer,Keyboard} out into separate functions.
Change mieqEnqueue to take a device pointer, that asks for the
_original_ device associated with this event.
2006-10-20 00:43:11 +03:00
Daniel Stone
a8d3dad9d9
xi: add DEVICE_ENABLE control
...
Add DEVICE_ENABLE control, which allows runtime enabling and disabling
of specific devices.
2006-10-20 00:43:11 +03:00
Daniel Stone
fc9b5f84b2
dix/devices: add devices in proper forward order
...
Add devices in forward order with the normal linked list convention.
Previously, AddInputDevice would add all the devices in reverse order to
off_devices, before they were added again in reverse order to devices with
EnableDevice.
This just makes both work in forward order, which provides the ordering as
you'd expect when hotplugging devices (i.e. adds them to the head, not the
tail).
2006-10-15 20:01:01 +03:00
Daniel Stone
4d8030076e
dix: move GetKeyboardEvents/GetPointerEvents to a new file, export symbols
...
Move GKE and GPE to a separate file, to help stem the events.c explosion.
Mark GKE/GKVE/GPE as _X_EXPORT.
2006-10-14 22:14:07 +03:00
Daniel Stone
6afc7c2846
dix/devices: remove XACE merge debris
2006-10-14 15:54:35 +03:00
Daniel Stone
335b503c5e
Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug
2006-10-13 18:10:45 +03:00
Daniel Stone
33406da096
GetKeyboardEvents: add first_valuator argument to GKVE
2006-10-08 23:20:56 +03:00
Daniel Stone
1546a39814
GetKeyboardValuatorEvents: also take first_valuator param
...
Take a first_valuator parameter, which specifies the first valuator.
2006-10-08 21:40:53 +03:00
Daniel Stone
41bb9fce47
mipointer: take device arguments, split miPointerAbsoluteCursor
...
Update mipointer API to take a device argument to (almost) all functions,
and split miPointerAbsoluteCursor into a couple of separate functions.
Remove miPointerAbsoluteCursor call from mieq, as we now deal with it in
GetPointerEvents.
Make miPointerSetPosition (successor of miPointerAbsoluteCursor) take
pointers to x and y, so it can return the clipped values.
Modify callers of miPointer*() functions to generally use the new
functions.
This should fix things with multi-head setups.
2006-10-08 20:34:32 +03:00
Daniel Stone
be8dfafd1d
warning cleanups
...
Fix still more warnings.
2006-10-08 20:32:16 +03:00
Daniel Stone
c2fab469b6
dix/devices: clean up debugging
2006-10-08 18:26:26 +03:00
Daniel Stone
b559cbb160
dix/CoreProcessKeyboardEvent: remove debugging for every key event
...
Also change #ifdef DEBUG/ErrorF/#endif to DebugF in FixKeyState.
2006-10-08 16:23:14 +03:00
Daniel Stone
58314756ae
GetPointerEvents: add first_valuator parameter
...
Add a first_valuator parameter. Looks correct by inspection, but untested
with first_valuator != 0 as yet.
2006-10-08 16:18:05 +03:00
Daniel Stone
84f5d2291c
GetPointerEvents: fix relatively harmless typo
...
Change !(cp->button || !cp->valuator) to (!cp->button || !cp->valuator).
2006-10-08 15:30:24 +03:00
Daniel Stone
2cf1098436
dix/events, mi/eq: remove utterly ridiculous debugging
...
Remove debugging which can cause long-lived Xorg logs to grow well above 1GB
if built with --enable-debug.
2006-09-30 17:05:46 +03:00
Daniel Stone
5d99e05f05
Merge branch 'input-hotplug' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug
2006-09-29 00:35:07 +03:00
Daniel Stone
ad631afcf3
make core keyboard/pointer map functions act on all core-sending devices
...
Make Set{Keyboard,Modifier,Pointer}Mapping act on all devices which send core
events.
Change LegalModifier to accept a DeviceIntPtr.
2006-09-29 00:34:23 +03:00
Adam Jackson
d05e0a97bb
Enable DPMS by default.
2006-09-14 18:49:12 -04:00
Zephaniah E. Hull
5893375786
Warning fix, and a syntax fix in a #if 0 section of code.
2006-09-10 15:50:51 -04:00
Eamon Walsh
9deb579dc9
Zero out newly created ExtensionEntry structures, but only after the
...
devPrivates have been initialized.
2006-09-08 15:25:17 -04:00
Eamon Walsh
cec392656c
Zero out newly allocated ClientRec structures.
...
This is required to initialize the devPrivates to a known state.
2006-09-08 15:24:23 -04:00
Daniel Stone
5436fce090
[PATCH] GetKeyboardValutorEvents: be even more careful
...
Don't accept devices without a keyboard feedback class.
2006-08-29 15:18:06 +03:00
Eamon Walsh
13c6713c82
Add four new XACE hooks: auditing, key event notification, window init
2006-08-25 18:17:01 -04:00
Daniel Stone
2b06c69c8f
GKVE: pass correct arguments to XkbCopyKeymap
...
Fix horrendous thinko. Indicators now work perfectly.
2006-08-24 14:51:26 +03:00
Daniel Stone
6323a11d0d
XkbCopyKeymap: optionally send NewKeyboardNotify/MapNotify events
...
Optionally send a NewKeyboardNotify or MapNotify event when copying the
keymap; modify GetKeyboardValuatorEvents to make use of this.
2006-08-23 18:53:04 +03:00
Daniel Stone
8f8487ff99
xkb/gkve: copy XKB map, not pointer-assign
...
Write a new function to copy an XKB map (does everything but geometry at
the moment), and use that instead of nasty pointer assignments.
2006-08-23 14:33:41 +03:00
Eamon Walsh
52ba722e4c
Merge branch 'XACE-modular' into my-XACE-modular
2006-08-21 18:49:31 -04:00
Alan Coopersmith
05541259bd
Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into XACE-modular
2006-08-21 13:07:41 -07:00
Daniel Stone
a56b98bb04
dix: enable null root cursor
...
Enable a blank root cursor, selectable with --enable-null-root-cursor at
configure time.
2006-08-18 18:10:09 +03:00
Daniel Stone
0704bb298c
Merge branch 'master' into input-hotplug
2006-08-18 17:30:14 +03:00
Daniel Stone
a1ac0440bb
dix: fix whiteroot thinko
...
Note to self: run git update-index _after_ testing, not just before.
2006-08-18 17:30:00 +03:00
Daniel Stone
cb0a565d2b
dix: add whiteroot flag
...
Add a -wr option to use a white root window, and use a BackPixel rather
than BackPixmap for both white and black root windows.
2006-08-18 17:04:48 +03:00
Daniel Stone
633b6a69f5
Merge branch 'master' into input-hotplug
2006-08-17 21:25:14 +03:00
Daniel Stone
7da51447ea
events.c: fix tiny XEvIE thinko
...
Make sure xeviehot gets updated after the ConfineToShape() call.
2006-08-17 21:24:07 +03:00
Daniel Stone
5d082f0563
events.c: make XEvIE a little less verbose
...
Change a lot of:
#ifdef XEVIE
xeviehot.x =
#endif
sprite.hot.x = ...
#ifdef XEVIE
xeviehot.y =
#endif
sprite.hot.y = ...
to one single
#ifdef XEVIE
xeviehot.x = sprite.hot.x;
xeviehot.y = sprite.hot.y;
#endif
at the end of the functions.
2006-08-17 21:20:58 +03:00
Daniel Stone
95dbfcf882
events.c: make XEvIE a little less verbose
...
Change a lot of:
#ifdef XEVIE
xeviehot.x =
#endif
sprite.hot.x = ...
#ifdef XEVIE
xeviehot.y =
#endif
sprite.hot.y = ...
to one single
#ifdef XEVIE
xeviehot.x = sprite.hot.x;
xeviehot.y = sprite.hot.y;
#endif
at the end of the functions.
2006-08-17 21:18:18 +03:00
Daniel Stone
c6c39afde3
dix/events.c: add YAFIXME
...
Add another FIXME to the cacaphony of XXX and FIXMEs in this file.
2006-08-17 21:13:09 +03:00
Daniel Stone
cd3f744b1f
fix missing brace, trim unused variables
2006-08-15 15:54:13 +03:00
Daniel Stone
34228d8b28
GPE: fix absolute button events / GKVE: (non-XKB) don't repeat lock keys
...
Fix absolute button events in GPE, where we would previously send valuator
events without bumping numEvents accordingly, causing the core event to
go missing.
In the non-XKB path in GKVE, implement proper lock behaviour (one press to
enable, one press to disable, discard releases).
Fix debug_events prototype.
2006-08-15 15:23:53 +03:00
Daniel Stone
d6433be3cc
Merge branch 'master' into input-hotplug
2006-08-12 21:50:52 +03:00
Daniel Stone
2bf9e3dc1e
make DIX more tolerant of devices without a CtrlProc (Debian #269860 )
...
Return BadDevice on client requests for devices without a CtrlProc, instead
of tanking horribly.
2006-08-12 21:50:39 +03:00
Daniel Stone
984babe86b
remove obsolete vendor defines
...
Remove random behaviour changes for SGI and MetroLink.
2006-08-12 21:43:38 +03:00
Alan Coopersmith
c2535f6792
Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into XACE-modular
2006-08-10 10:37:59 -07:00
Daniel Stone
45bce556e8
GetMaximumEventsNum: be more conservative
...
Be slightly more conservative in our maximum event count if we're using
XKB (and thus don't need to count the extra repeat events).
2006-08-10 18:02:47 +03:00
Daniel Stone
3832a3d7db
GKVE: don't repeat modifiers when using XKB
...
Make sure we don't ever repeat modifiers (previously was repeating when
using XKB); only do explicit KP/KR repeats in the non-XKB case. XKB will
take care of repeating when we're using it.
2006-08-10 14:13:51 +03:00
Daniel Stone
9f188416bb
core devices: clear devicePrivates on close
2006-08-10 14:00:34 +03:00
Daniel Stone
539d1f3347
GKVE/GPE: have DDX allocate events
...
Don't allocate events on every GKE/GKVE/GPE call, just have the DDX manage
it instead. Introduce GetMaximumEventsNum(), which is the maximum number
of events these functions will ever produce.
2006-08-10 14:00:14 +03:00
Daniel Stone
fe351a711e
GKVE: send XkbMapNotify, not XkbNewKeyboardNotify
...
Sending MapNotify is more correct in this case than NKN, so do that.
2006-08-08 14:54:10 +03:00
Daniel Stone
3108981631
Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug
2006-08-08 12:01:12 +03:00
Daniel Stone
12dbd8a02f
remove optional R3 backwards compatibility
...
Remove the permitOldBugs flag, which enabled backwards compatbility with
broken R2/R3 era clients.
2006-08-07 23:43:40 +03:00
Daniel Stone
458c63a841
enable adding devices after removal of a middle device
...
Allow new devices to be added after a device that _wasn't_ the last on the
list was removed, by ensuring inputInfo.numDevices always increases, and
never decreases.
2006-08-07 23:02:17 +03:00
Daniel Stone
a31d11a7a8
GKVE: get rid of bogus double-release check
...
Get rid of a bogus double-release check which broke non-XKB servers.
2006-08-07 23:01:23 +03:00
Daniel Stone
d1c18af27e
GPE: use button map for DBP/DBR, not just BP/BR
...
Make sure we use the button map for extended events, not just core.
2006-08-07 21:11:38 +03:00