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
Daniel Stone
98fdf874ee
move all autorepeat logic to DIX
...
Move core autorepeat logic for keyboards down to the DIX, remove it from
KDrive.
2006-08-07 16:51:39 +03:00
Eamon Walsh
9138d5a51e
Make SecurityLookupIDBy* part of the base functionality.
2006-08-03 18:24:04 -04:00
Eamon Walsh
96e45626c4
Rebase Security extension to use devPrivates for storing security state.
2006-08-02 20:29:59 -04:00
Eamon Walsh
3c23dec596
Call ClientStateCallback on serverClient devPrivates initialization.
2006-08-02 13:39:49 -04:00
Eamon Walsh
b04d648547
Added devPrivates support to the ExtensionEntry structure.
2006-07-31 19:35:08 -04:00
Daniel Stone
7465010d59
Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug
2006-07-21 19:05:41 -04:00
Adam Jackson
0aaac95b0d
Remove RCS tags. Fix Xprint makefile braindamage.
2006-07-21 17:56:00 -04:00
Daniel Stone
7711c56d2e
xephyr: fix keymap, pointer; dix: fix multiple axes
...
Initialise our axes properly in the DIX, and make sure we don't
unnecessarily clip maxval when it's not set.
Fix keymap copying in Xephyr (to some degree: it's still broken),
and set nAxes and nButtons properly.
2006-07-21 15:19:54 -04:00
Daniel Stone
463e0fe35b
update KDrive to new input API
...
Update KDrive to fit the new API (mieqInit and InitPointerDeviceStruct), and
include InitTouchscreenDeviceStruct in the DIX.
2006-07-21 15:19:54 -04:00
Daniel Stone
1987af8c49
add virtual core devices to DIX
...
Add virtual core devices, with proper keymaps etc, to the DIX.
2006-07-21 15:19:53 -04:00
Daniel Stone
e896195eab
remove extraneous font debugging code
...
Some of it didn't compile, and some of it was just unnecessary.
2006-07-21 15:19:53 -04:00
Daniel Stone
ecfad74c48
add support for built-in fonts
...
Use --enable-builtin-fonts to only use built-in fonts, and avoid loading
fonts.
2006-07-21 15:19:52 -04:00
Daniel Stone
a274e7296b
add GetPointerEvents/GetKeyboardEvents framework
...
Add GetPointerEvents (with XFree86 pointer acceleration) and GetKeyboardEvents
to the DIX. Extend the ValuatorClass structure to account for same.
2006-07-21 15:19:51 -04:00
Daniel Stone
02a9531156
add basic D-BUS configuration mechanism
...
Also move LookupDeviceIntRec into the DIX, and add InputOption type, and
NewInputDeviceRequest prototype (DIX requests DDX to add a device). Does not
link without an implemented NIDR.
2006-07-21 15:19:49 -04:00
Daniel Stone
84683f19b4
get rid of XFree86LOADER, XFree86Server, XFree86Module, and IN_MODULE
...
Get rid of almost all uses of these definitions. They're still defined for
delinquent out-of-tree drivers, and also for the Mesa build. As well as
for miinitext.c. But largely gone.
2006-07-18 18:17:38 -04:00
Tilman Sauerbeck
63f13e01ee
Bug #7097 : do case-insensitive comparison for some hotkeys.
...
xkb's strcasecmp implementation has been moved to the dix so it's now
safe to just use strcasecmp().
2006-07-08 11:33:44 +02:00
Alan Coopersmith
90af38fa0c
Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver
...
Conflicts:
Xext/appgroup.c
2006-06-21 16:23:31 -07:00
Alan Coopersmith
3e098efa35
Correct ifdef - should be XACE, not XCSECURITY
2006-06-21 16:21:03 -07:00
Alan Coopersmith
77c947b900
Move Xserver internal API for appgroup from Xagsrv.h to appgroup.h
...
(Since all use is inside the xserver module, might as well keep the header
in the Xserver module instead of in proto/XExt to allow easier synchronization
of updates.)
2006-06-21 16:18:41 -07:00
Greg Kroah-Hartman
865884d050
fix compiler warning in dix/xpstubs.c when XPRINT is not defined
2006-06-21 14:16:28 -07:00
Alan Coopersmith
d44b2a0a57
Move Xserver API for security extension to securitysrv.h
2006-06-20 18:22:51 -07:00
Eamon Walsh
37f0ae0245
Replace XC-SECURITY code with XACE security hooks
...
(cherry picked from 8526cd6395
commit)
2006-06-19 17:09:37 -07:00
Greg Kroah-Hartman
8f5aa38abf
fix compiler warning about XKB_IN_SERVER redefinition
2006-06-07 12:33:44 -07:00
Daniel Stone
a9ed5a8790
Kill LBX, too.
2006-06-01 22:06:41 +00:00
Daniel Stone
32be08ba72
Remove horrendously ugly DDX backward-compatibility.
2006-06-01 19:22:38 +00:00
Adam Jackson
bc0c56c407
Bug #6924 : Restore the ABI for DrawableRec and ColormapRec to the state
...
they were in prior to the fix for #6438 . Based on a patch from Andy
Ritger.
2006-05-22 15:47:56 +00:00
Fredrik Höglund
e1fc15a85f
Put the screensaver extension back in the Xext module.
...
Move the screenSaverSuspended variable to DIX globals.
Restore the old link order for the Xorg and Xdmx binaries.
2006-04-05 21:08:45 +00:00
Søren Sandmann Pedersen
acca49b1a5
Fri Mar 31 12:37:16 2006 Søren Sandmann <sandmann@redhat.com>
...
Fix copyright statement
2006-03-31 17:39:35 +00:00
Deron Johnson
e31e8ace10
Fix composite overlay window bug 6411
2006-03-29 17:51:54 +00:00
Adam Jackson
7deaaa797c
Big old pile of warning fixes.
2006-03-28 01:21:00 +00:00
Fredrik Höglund
ae935832fa
Refactored the screensaver and DPMS timer code to use the screensaver timer
...
for both screensaver and DPMS. Removed the SetDPMSTimers() and
FreeDPMSTimers() functions.
2006-03-24 20:50:13 +00:00