[PATCH] Drop valuator mask argument from GetKeyboardEvents
Jeremy Huddleston Sequoia
jeremyhu at apple.com
Tue Dec 16 00:30:47 PST 2014
I should be able to take a look over the winter break next week.
--Jeremy
> On Dec 15, 2014, at 20:43, Peter Hutterer <peter.hutterer at who-t.net> wrote:
>
> Nothing was using it and if anyone had they would've gotten a warning and
> noticed that it doesn't actually work. Drop this, it has been unused for years.
>
> Input ABI 22
>
> Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
> ---
> Jeremy, Jon, can you please build-test this? thanks
>
>
> Xext/xtest.c | 2 +-
> dix/devices.c | 2 +-
> dix/getevents.c | 40 +++++-----------------------------------
> hw/dmx/input/dmxevents.c | 7 ++-----
> hw/kdrive/src/kinput.c | 2 +-
> hw/xfree86/common/xf86Events.c | 2 +-
> hw/xfree86/common/xf86Module.h | 2 +-
> hw/xfree86/common/xf86Xinput.c | 41 +++++++----------------------------------
> hw/xfree86/common/xf86Xinput.h | 13 +++----------
> hw/xnest/Events.c | 2 +-
> hw/xquartz/darwinEvents.c | 6 ++----
> hw/xwayland/xwayland-input.c | 12 +++---------
> hw/xwin/winkeybd.c | 2 +-
> include/input.h | 5 ++---
> 14 files changed, 31 insertions(+), 107 deletions(-)
>
> diff --git a/Xext/xtest.c b/Xext/xtest.c
> index 88df443..2371a69 100644
> --- a/Xext/xtest.c
> +++ b/Xext/xtest.c
> @@ -421,7 +421,7 @@ ProcXTestFakeInput(ClientPtr client)
> case KeyPress:
> case KeyRelease:
> nevents =
> - GetKeyboardEvents(xtest_evlist, dev, type, ev->u.u.detail, NULL);
> + GetKeyboardEvents(xtest_evlist, dev, type, ev->u.u.detail);
> break;
> }
>
> diff --git a/dix/devices.c b/dix/devices.c
> index c4fdbe1..d8e7f9c 100644
> --- a/dix/devices.c
> +++ b/dix/devices.c
> @@ -2518,7 +2518,7 @@ ReleaseButtonsAndKeys(DeviceIntPtr dev)
> /* Release all keys */
> for (i = 0; k && i < MAP_LENGTH; i++) {
> if (BitIsOn(k->down, i)) {
> - nevents = GetKeyboardEvents(eventlist, dev, KeyRelease, i, NULL);
> + nevents = GetKeyboardEvents(eventlist, dev, KeyRelease, i);
> for (j = 0; j < nevents; j++)
> mieqProcessDeviceEvent(dev, &eventlist[j], NULL);
> }
> diff --git a/dix/getevents.c b/dix/getevents.c
> index 6684ddc..6e3dc06 100644
> --- a/dix/getevents.c
> +++ b/dix/getevents.c
> @@ -1054,21 +1054,18 @@ event_set_root_coordinates(DeviceEvent *event, double x, double y)
> *
> * This function is not reentrant. Disable signals before calling.
> *
> - * FIXME: flags for relative/abs motion?
> - *
> * @param device The device to generate the event for
> * @param type Event type, one of KeyPress or KeyRelease
> * @param keycode Key code of the pressed/released key
> - * @param mask Valuator mask for valuators present for this event.
> *
> */
> void
> QueueKeyboardEvents(DeviceIntPtr device, int type,
> - int keycode, const ValuatorMask *mask)
> + int keycode)
> {
> int nevents;
>
> - nevents = GetKeyboardEvents(InputEventList, device, type, keycode, mask);
> + nevents = GetKeyboardEvents(InputEventList, device, type, keycode);
> queueEventList(device, InputEventList, nevents);
> }
>
> @@ -1083,20 +1080,17 @@ QueueKeyboardEvents(DeviceIntPtr device, int type,
> */
> int
> GetKeyboardEvents(InternalEvent *events, DeviceIntPtr pDev, int type,
> - int key_code, const ValuatorMask *mask_in)
> + int key_code)
> {
> int num_events = 0;
> CARD32 ms = 0;
> DeviceEvent *event;
> RawDeviceEvent *raw;
> - ValuatorMask mask;
>
> #if XSERVER_DTRACE
> if (XSERVER_INPUT_EVENT_ENABLED()) {
> - XSERVER_INPUT_EVENT(pDev->id, type, key_code, 0,
> - mask_in ? mask_in->last_bit + 1 : 0,
> - mask_in ? mask_in->mask : NULL,
> - mask_in ? mask_in->valuators : NULL);
> + XSERVER_INPUT_EVENT(pDev->id, type, key_code, 0, 0,
> + NULL, NULL);
> }
> #endif
>
> @@ -1109,11 +1103,6 @@ GetKeyboardEvents(InternalEvent *events, DeviceIntPtr pDev, int type,
> (key_code < 8 || key_code > 255))
> return 0;
>
> - if (mask_in && valuator_mask_size(mask_in) > 1) {
> - ErrorF("[dix] the server does not handle valuator masks with "
> - "keyboard events. This is a bug. You may fix it.\n");
> - }
> -
> num_events = 1;
>
> events =
> @@ -1135,14 +1124,7 @@ GetKeyboardEvents(InternalEvent *events, DeviceIntPtr pDev, int type,
> events++;
> num_events++;
>
> - valuator_mask_copy(&mask, mask_in);
> -
> init_raw(pDev, raw, ms, type, key_code);
> - set_raw_valuators(raw, &mask, raw->valuators.data_raw);
> -
> - clipValuators(pDev, &mask);
> -
> - set_raw_valuators(raw, &mask, raw->valuators.data);
>
> event = &events->device_event;
> init_device_event(event, pDev, ms);
> @@ -1157,18 +1139,6 @@ GetKeyboardEvents(InternalEvent *events, DeviceIntPtr pDev, int type,
> set_key_up(pDev, key_code, KEY_POSTED);
> }
>
> - clipValuators(pDev, &mask);
> -
> - set_valuators(pDev, event, &mask);
> -
> - if (!IsFloating(pDev)) {
> - DeviceIntPtr master = GetMaster(pDev, MASTER_POINTER);
> -
> - event_set_root_coordinates(event,
> - master->last.valuators[0],
> - master->last.valuators[1]);
> - }
> -
> return num_events;
> }
>
> diff --git a/hw/dmx/input/dmxevents.c b/hw/dmx/input/dmxevents.c
> index 14ac05f..2b579ee 100644
> --- a/hw/dmx/input/dmxevents.c
> +++ b/hw/dmx/input/dmxevents.c
> @@ -488,12 +488,9 @@ dmxTranslateAndEnqueueExtEvent(DMXLocalInputInfoPtr dmxLocal,
> switch (type) {
> case XI_DeviceKeyPress:
> case XI_DeviceKeyRelease:
> - EXTRACT_VALUATORS(ke, valuators);
> - valuator_mask_set_range(&mask, ke->first_axis, ke->axes_count,
> - valuators);
> if (block)
> OsBlockSIGIO();
> - QueueKeyboardEvents(pDevice, event, ke->keycode, &mask);
> + QueueKeyboardEvents(pDevice, event, ke->keycode);
> if (block)
> OsReleaseSIGIO();
> break;
> @@ -718,7 +715,7 @@ dmxEnqueue(DevicePtr pDev, int type, int detail, KeySym keySym,
> detail = dmxFixup(pDev, detail, keySym);
>
> /*ErrorF("KEY %d sym %d\n", detail, (int) keySym); */
> - QueueKeyboardEvents(p, type, detail, NULL);
> + QueueKeyboardEvents(p, type, detail);
> return;
>
> case ButtonPress:
> diff --git a/hw/kdrive/src/kinput.c b/hw/kdrive/src/kinput.c
> index a539ca5..057f53b 100644
> --- a/hw/kdrive/src/kinput.c
> +++ b/hw/kdrive/src/kinput.c
> @@ -1831,7 +1831,7 @@ KdEnqueueKeyboardEvent(KdKeyboardInfo * ki,
> else
> type = KeyPress;
>
> - QueueKeyboardEvents(ki->dixdev, type, key_code, NULL);
> + QueueKeyboardEvents(ki->dixdev, type, key_code);
> }
> else {
> ErrorF("driver %s wanted to post scancode %d outside of [%d, %d]!\n",
> diff --git a/hw/xfree86/common/xf86Events.c b/hw/xfree86/common/xf86Events.c
> index 16b3e28..c06aaae 100644
> --- a/hw/xfree86/common/xf86Events.c
> +++ b/hw/xfree86/common/xf86Events.c
> @@ -403,7 +403,7 @@ xf86ReleaseKeys(DeviceIntPtr pDev)
> i < keyc->xkbInfo->desc->max_key_code; i++) {
> if (key_is_down(pDev, i, KEY_POSTED)) {
> OsBlockSIGIO();
> - QueueKeyboardEvents(pDev, KeyRelease, i, NULL);
> + QueueKeyboardEvents(pDev, KeyRelease, i);
> OsReleaseSIGIO();
> }
> }
> diff --git a/hw/xfree86/common/xf86Module.h b/hw/xfree86/common/xf86Module.h
> index e68fe9c..25a8869 100644
> --- a/hw/xfree86/common/xf86Module.h
> +++ b/hw/xfree86/common/xf86Module.h
> @@ -81,7 +81,7 @@ typedef enum {
> */
> #define ABI_ANSIC_VERSION SET_ABI_VERSION(0, 4)
> #define ABI_VIDEODRV_VERSION SET_ABI_VERSION(19, 0)
> -#define ABI_XINPUT_VERSION SET_ABI_VERSION(21, 0)
> +#define ABI_XINPUT_VERSION SET_ABI_VERSION(22, 0)
> #define ABI_EXTENSION_VERSION SET_ABI_VERSION(9, 0)
> #define ABI_FONT_VERSION SET_ABI_VERSION(0, 6)
>
> diff --git a/hw/xfree86/common/xf86Xinput.c b/hw/xfree86/common/xf86Xinput.c
> index 1fb5b16..9fa3dc4 100644
> --- a/hw/xfree86/common/xf86Xinput.c
> +++ b/hw/xfree86/common/xf86Xinput.c
> @@ -1326,47 +1326,21 @@ xf86PostButtonEventM(DeviceIntPtr device,
> }
>
> void
> -xf86PostKeyEvent(DeviceIntPtr device,
> - unsigned int key_code,
> - int is_down,
> - int is_absolute, int first_valuator, int num_valuators, ...)
> +xf86PostKeyEvent(DeviceIntPtr device, unsigned int key_code, int is_down)
> {
> - va_list var;
> - int i = 0;
> - ValuatorMask mask;
> -
> - XI_VERIFY_VALUATORS(num_valuators);
> -
> - valuator_mask_zero(&mask);
> -
> - va_start(var, num_valuators);
> - for (i = 0; i < num_valuators; i++)
> - valuator_mask_set(&mask, first_valuator + i, va_arg(var, int));
> -
> - va_end(var);
> -
> - xf86PostKeyEventM(device, key_code, is_down, is_absolute, &mask);
> + xf86PostKeyEventM(device, key_code, is_down);
> }
>
> void
> xf86PostKeyEventP(DeviceIntPtr device,
> unsigned int key_code,
> - int is_down,
> - int is_absolute,
> - int first_valuator, int num_valuators, const int *valuators)
> + int is_down)
> {
> - ValuatorMask mask;
> -
> - XI_VERIFY_VALUATORS(num_valuators);
> -
> - valuator_mask_set_range(&mask, first_valuator, num_valuators, valuators);
> - xf86PostKeyEventM(device, key_code, is_down, is_absolute, &mask);
> + xf86PostKeyEventM(device, key_code, is_down);
> }
>
> void
> -xf86PostKeyEventM(DeviceIntPtr device,
> - unsigned int key_code,
> - int is_down, int is_absolute, const ValuatorMask *mask)
> +xf86PostKeyEventM(DeviceIntPtr device, unsigned int key_code, int is_down)
> {
> #if XFreeXDGA
> DeviceIntPtr pointer;
> @@ -1382,8 +1356,7 @@ xf86PostKeyEventM(DeviceIntPtr device,
> }
> #endif
>
> - QueueKeyboardEvents(device,
> - is_down ? KeyPress : KeyRelease, key_code, mask);
> + QueueKeyboardEvents(device, is_down ? KeyPress : KeyRelease, key_code);
> }
>
> void
> @@ -1392,7 +1365,7 @@ xf86PostKeyboardEvent(DeviceIntPtr device, unsigned int key_code, int is_down)
> ValuatorMask mask;
>
> valuator_mask_zero(&mask);
> - xf86PostKeyEventM(device, key_code, is_down, 0, &mask);
> + xf86PostKeyEventM(device, key_code, is_down);
> }
>
> InputInfoPtr
> diff --git a/hw/xfree86/common/xf86Xinput.h b/hw/xfree86/common/xf86Xinput.h
> index 42d66d2..0024053 100644
> --- a/hw/xfree86/common/xf86Xinput.h
> +++ b/hw/xfree86/common/xf86Xinput.h
> @@ -148,18 +148,11 @@ extern _X_EXPORT void xf86PostButtonEventM(DeviceIntPtr device, int is_absolute,
> int button, int is_down,
> const ValuatorMask *mask);
> extern _X_EXPORT void xf86PostKeyEvent(DeviceIntPtr device,
> - unsigned int key_code, int is_down,
> - int is_absolute, int first_valuator,
> - int num_valuators, ...);
> + unsigned int key_code, int is_down);
> extern _X_EXPORT void xf86PostKeyEventM(DeviceIntPtr device,
> - unsigned int key_code, int is_down,
> - int is_absolute,
> - const ValuatorMask *mask);
> + unsigned int key_code, int is_down);
> extern _X_EXPORT void xf86PostKeyEventP(DeviceIntPtr device,
> - unsigned int key_code, int is_down,
> - int is_absolute, int first_valuator,
> - int num_valuators,
> - const int *valuators);
> + unsigned int key_code, int is_down);
> extern _X_EXPORT void xf86PostKeyboardEvent(DeviceIntPtr device,
> unsigned int key_code, int is_down);
> extern _X_EXPORT void xf86PostTouchEvent(DeviceIntPtr dev, uint32_t touchid,
> diff --git a/hw/xnest/Events.c b/hw/xnest/Events.c
> index 3ff095b..f727557 100644
> --- a/hw/xnest/Events.c
> +++ b/hw/xnest/Events.c
> @@ -103,7 +103,7 @@ void
> xnestQueueKeyEvent(int type, unsigned int keycode)
> {
> lastEventTime = GetTimeInMillis();
> - QueueKeyboardEvents(xnestKeyboardDevice, type, keycode, NULL);
> + QueueKeyboardEvents(xnestKeyboardDevice, type, keycode);
> }
>
> void
> diff --git a/hw/xquartz/darwinEvents.c b/hw/xquartz/darwinEvents.c
> index 5a5e4da..9bf2f14 100644
> --- a/hw/xquartz/darwinEvents.c
> +++ b/hw/xquartz/darwinEvents.c
> @@ -456,8 +456,7 @@ DarwinInputReleaseButtonsAndKeys(DeviceIntPtr pDev)
> if (pDev->key) {
> for (i = 0; i < NUM_KEYCODES; i++) {
> if (BitIsOn(pDev->key->down, i + MIN_KEYCODE)) {
> - QueueKeyboardEvents(pDev, KeyRelease, i + MIN_KEYCODE,
> - NULL);
> + QueueKeyboardEvents(pDev, KeyRelease, i + MIN_KEYCODE);
> }
> }
> }
> @@ -611,8 +610,7 @@ DarwinSendKeyboardEvents(int ev_type, int keycode)
>
> darwinEvents_lock();
> {
> - QueueKeyboardEvents(darwinKeyboard, ev_type, keycode + MIN_KEYCODE,
> - NULL);
> + QueueKeyboardEvents(darwinKeyboard, ev_type, keycode + MIN_KEYCODE);
> DarwinPokeEQ();
> } darwinEvents_unlock();
> }
> diff --git a/hw/xwayland/xwayland-input.c b/hw/xwayland/xwayland-input.c
> index b8c543c..68826ff 100644
> --- a/hw/xwayland/xwayland-input.c
> +++ b/hw/xwayland/xwayland-input.c
> @@ -318,7 +318,6 @@ keyboard_handle_key(void *data, struct wl_keyboard *keyboard, uint32_t serial,
> {
> struct xwl_seat *xwl_seat = data;
> uint32_t *k, *end;
> - ValuatorMask mask;
>
> xwl_seat->xwl_screen->serial = serial;
>
> @@ -333,9 +332,8 @@ keyboard_handle_key(void *data, struct wl_keyboard *keyboard, uint32_t serial,
> *k = key;
> }
>
> - valuator_mask_zero(&mask);
> QueueKeyboardEvents(xwl_seat->keyboard,
> - state ? KeyPress : KeyRelease, key + 8, &mask);
> + state ? KeyPress : KeyRelease, key + 8);
> }
>
> static void
> @@ -388,16 +386,14 @@ keyboard_handle_enter(void *data, struct wl_keyboard *keyboard,
> struct wl_surface *surface, struct wl_array *keys)
> {
> struct xwl_seat *xwl_seat = data;
> - ValuatorMask mask;
> uint32_t *k;
>
> xwl_seat->xwl_screen->serial = serial;
> xwl_seat->keyboard_focus = surface;
>
> wl_array_copy(&xwl_seat->keys, keys);
> - valuator_mask_zero(&mask);
> wl_array_for_each(k, &xwl_seat->keys)
> - QueueKeyboardEvents(xwl_seat->keyboard, KeyPress, *k + 8, &mask);
> + QueueKeyboardEvents(xwl_seat->keyboard, KeyPress, *k + 8);
> }
>
> static void
> @@ -405,14 +401,12 @@ keyboard_handle_leave(void *data, struct wl_keyboard *keyboard,
> uint32_t serial, struct wl_surface *surface)
> {
> struct xwl_seat *xwl_seat = data;
> - ValuatorMask mask;
> uint32_t *k;
>
> xwl_seat->xwl_screen->serial = serial;
>
> - valuator_mask_zero(&mask);
> wl_array_for_each(k, &xwl_seat->keys)
> - QueueKeyboardEvents(xwl_seat->keyboard, KeyRelease, *k + 8, &mask);
> + QueueKeyboardEvents(xwl_seat->keyboard, KeyRelease, *k + 8);
>
> xwl_seat->keyboard_focus = NULL;
> }
> diff --git a/hw/xwin/winkeybd.c b/hw/xwin/winkeybd.c
> index 3a75ab2..e7202a6 100644
> --- a/hw/xwin/winkeybd.c
> +++ b/hw/xwin/winkeybd.c
> @@ -502,7 +502,7 @@ winSendKeyEvent(DWORD dwKey, Bool fDown)
> g_winKeyState[dwKey] = fDown;
>
> QueueKeyboardEvents(g_pwinKeyboard, fDown ? KeyPress : KeyRelease,
> - dwKey + MIN_KEYCODE, NULL);
> + dwKey + MIN_KEYCODE);
>
> winDebug("winSendKeyEvent: dwKey: %d, fDown: %d\n", dwKey, fDown);
> }
> diff --git a/include/input.h b/include/input.h
> index bf22dc7..cb83cac 100644
> --- a/include/input.h
> +++ b/include/input.h
> @@ -448,12 +448,11 @@ extern _X_EXPORT void QueuePointerEvents(DeviceIntPtr pDev,
> extern _X_EXPORT int GetKeyboardEvents(InternalEvent *events,
> DeviceIntPtr pDev,
> int type,
> - int key_code, const ValuatorMask *mask);
> + int key_code);
>
> extern _X_EXPORT void QueueKeyboardEvents(DeviceIntPtr pDev,
> int type,
> - int key_code,
> - const ValuatorMask *mask);
> + int key_code);
>
> extern int GetTouchEvents(InternalEvent *events,
> DeviceIntPtr pDev,
> --
> 2.1.0
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4109 bytes
Desc: not available
URL: <http://lists.x.org/archives/xorg-devel/attachments/20141216/ea1474ef/attachment.bin>
More information about the xorg-devel
mailing list