Lines Matching refs:pAction

182                    XkbFilterPtr filter, unsigned keycode, XkbAction *pAction)
188 filter->filterOthers = ((pAction->mods.mask & XkbSA_ClearLocks) != 0);
191 if (pAction->type == XkbSA_SetMods) {
192 filter->upAction = *pAction;
193 xkbi->setMods = pAction->mods.mask;
196 xkbi->groupChange = XkbSAGroup(&pAction->group);
197 if (pAction->group.flags & XkbSA_GroupAbsolute)
199 filter->upAction = *pAction;
230 XkbFilterPtr filter, unsigned keycode, XkbAction *pAction)
240 if (pAction->type == XkbSA_LatchMods) {
241 filter->upAction = *pAction;
242 xkbi->setMods = pAction->mods.mask;
245 xkbi->groupChange = XkbSAGroup(&pAction->group);
246 if (pAction->group.flags & XkbSA_GroupAbsolute)
248 filter->upAction = *pAction;
252 else if (pAction && (filter->priv == LATCH_PENDING)) {
253 if (((1 << pAction->type) & XkbSA_BreakLatch) != 0) {
341 else if (pAction && (filter->priv == LATCH_KEY_DOWN)) {
350 return filter->filter(xkbi, filter, keycode, pAction);
357 XkbFilterPtr filter, unsigned keycode, XkbAction *pAction)
362 if (pAction && (pAction->type == XkbSA_LockGroup)) {
363 if (pAction->group.flags & XkbSA_GroupAbsolute)
364 xkbi->state.locked_group = XkbSAGroup(&pAction->group);
366 xkbi->state.locked_group += XkbSAGroup(&pAction->group);
373 filter->priv = xkbi->state.locked_mods & pAction->mods.mask;
375 filter->upAction = *pAction;
377 xkbi->state.locked_mods |= pAction->mods.mask;
378 xkbi->setMods = pAction->mods.mask;
394 XkbFilterPtr filter, unsigned keycode, XkbAction *pAction)
398 CARD8 flags = pAction->iso.flags;
404 filter->upAction = *pAction;
407 xkbi->groupChange = XkbSAGroup(&pAction->iso);
411 xkbi->setMods = pAction->iso.mask;
442 else if (pAction) {
445 switch (pAction->type) {
449 pAction->type = XkbSA_LockMods;
456 pAction->type = XkbSA_LockGroup;
462 pAction->type = XkbSA_LockPtrBtn;
468 pAction->type = XkbSA_LockControls;
522 XkbFilterPtr filter, unsigned keycode, XkbAction *pAction)
533 filter->upAction = *pAction;
536 accel = ((pAction->ptr.flags & XkbSA_NoAcceleration) == 0);
537 x = XkbPtrActionX(&pAction->ptr);
538 y = XkbPtrActionY(&pAction->ptr);
539 XkbFakePointerMotion(xkbi->device, pAction->ptr.flags, x, y);
543 xkbi->mouseKeysFlags = pAction->ptr.flags;
544 xkbi->mouseKeysDX = XkbPtrActionX(&pAction->ptr);
545 xkbi->mouseKeysDY = XkbPtrActionY(&pAction->ptr);
563 XkbFilterPtr filter, unsigned keycode, XkbAction *pAction)
566 int button = pAction->btn.button;
576 filter->upAction = *pAction;
578 switch (pAction->type) {
581 ((pAction->btn.flags & XkbSA_LockNoLock) == 0)) {
593 if (pAction->btn.count > 0) {
594 nClicks = pAction->btn.count;
613 switch (pAction->dflt.affect) {
615 if (pAction->dflt.flags & XkbSA_DfltBtnAbsolute)
616 ctrls->mk_dflt_btn = XkbSAPtrDfltValue(&pAction->dflt);
618 ctrls->mk_dflt_btn += XkbSAPtrDfltValue(&pAction->dflt);
628 pAction->dflt.affect);
676 XkbFilterPtr filter, unsigned keycode, XkbAction *pAction)
692 change = XkbActionCtrls(&pAction->ctrls);
695 filter->upAction = *pAction;
697 if (pAction->type == XkbSA_LockControls) {
764 unsigned keycode, XkbAction *pAction)
774 if ((filter->keycode == keycode) && pAction &&
775 (pAction->type != XkbSA_ActionMessage))
780 pMsg = &pAction->msg;
788 filter->upAction = *pAction;
801 return ((pAction->msg.flags & XkbSA_MessageGenKeyEvent) != 0);
805 if (pAction == NULL) {
820 } else if (memcmp(pMsg, pAction, 8) == 0) {
832 XkbFilterPtr filter, unsigned keycode, XkbAction *pAction)
846 if ((filter->keycode == keycode) && pAction &&
847 (pAction->type != XkbSA_RedirectKey))
869 if ((pAction->redirect.new_key < xkbi->desc->min_key_code) ||
870 (pAction->redirect.new_key > xkbi->desc->max_key_code)) {
877 filter->upAction = *pAction;
880 ev.detail.key = pAction->redirect.new_key;
882 mask = XkbSARedirectVModsMask(&pAction->redirect);
883 mods = XkbSARedirectVMods(&pAction->redirect);
888 mask |= pAction->redirect.mods_mask;
889 mods |= pAction->redirect.mods;
920 if (pAction == NULL || ev.detail.key != pAction->redirect.new_key) {
964 with the same pAction, which will create the press for the new
966 return (pAction && ev.detail.key != pAction->redirect.new_key);
973 unsigned keycode, XkbAction *pAction)
986 XkbDDXSwitchScreen(dev, keycode, pAction);
997 XkbHandlePrivate(DeviceIntPtr dev, KeyCode keycode, XkbAction *pAction)
999 XkbAnyAction *xkb_act = &(pAction->any);
1032 return XkbDDXPrivate(dev, keycode, pAction);
1037 XkbFilterPtr filter, unsigned keycode, XkbAction *pAction)
1049 XkbHandlePrivate(dev, keycode, pAction);
1061 XkbFilterPtr filter, unsigned keycode, XkbAction *pAction)
1070 _XkbLookupButtonDevice(&dev, pAction->devbtn.device, serverClient,
1075 button = pAction->devbtn.button;
1084 filter->upAction = *pAction;
1085 switch (pAction->type) {
1087 if ((pAction->devbtn.flags & XkbSA_LockNoLock) ||
1094 if (pAction->devbtn.count > 0) {
1097 nClicks = pAction->btn.count;
1162 _XkbApplyFilters(XkbSrvInfoPtr xkbi, unsigned kc, XkbAction *pAction)
1171 pAction)