Lines Matching refs:pEmu3btn
38 static CARD32 buttonTimer(MouseEmu3btnPtr pEmu3btn);
39 static void Emulate3ButtonsSetEnabled(MouseEmu3btnPtr pEmu3btn, Bool enable);
40 static Bool Emulate3ButtonsSoft(MouseEmu3btnPtr pEmu3btn);
575 buttonTimer(MouseEmu3btnPtr pEmu3btn)
583 pEmu3btn->emulate3Pending = FALSE;
584 timeout_action = &stateTab[pEmu3btn->emulateState].timeout;
589 QueuePointerEvents(pEmu3btn->device, type, button, flag, &mask);
590 pEmu3btn->emulateState = timeout_action->new_state;
593 "Got unexpected buttonTimer in state %d\n", pEmu3btn->emulateState);
601 Emulate3ButtonsSetEnabled(MouseEmu3btnPtr pEmu3btn, Bool enable)
604 if (pEmu3btn->emulate3Buttons == enable)
607 pEmu3btn->emulate3Buttons = enable;
610 pEmu3btn->emulateState = ST_GROUND;
611 pEmu3btn->emulate3Pending = FALSE;
612 pEmu3btn->emulate3ButtonsSoft = FALSE; /* specifically requested now */
615 (void *)pEmu3btn);
617 if (pEmu3btn->emulate3Pending)
618 buttonTimer(pEmu3btn);
621 (void *)pEmu3btn);
626 Emulate3ButtonsSoft(MouseEmu3btnPtr pEmu3btn)
629 if (!pEmu3btn->emulate3ButtonsSoft)
645 Emulate3ButtonsSetEnabled(pEmu3btn, FALSE);
654 MouseEmu3btnPtr pEmu3btn = data;
657 if (pEmu3btn->emulate3Pending) {
658 ms = pEmu3btn->emulate3Expires - GetTimeInMillis();
668 MouseEmu3btnPtr pEmu3btn = data;
671 if (pEmu3btn->emulate3Pending) {
672 ms = pEmu3btn->emulate3Expires - GetTimeInMillis();
674 buttonTimer(pEmu3btn);
684 * (MouseEmu3btnPtr)pEmu3btn : Emu3btn private record
690 Emulate3ButtonsEnable(MouseEmu3btnPtr pEmu3btn, DeviceIntPtr device, int timeout)
698 pEmu3btn->device = device;
699 pEmu3btn->emulate3Timeout = timeout;
701 Emulate3ButtonsSetEnabled(pEmu3btn, TRUE);
710 * (MouseEmu3btnPtr)pEmu3btn : Emu3btn private record
718 Emulate3ButtonsQueueEvent(MouseEmu3btnPtr pEmu3btn, int type, int buttons, int bmask)
720 DeviceIntPtr device = pEmu3btn->device;
728 if (pEmu3btn->emulate3ButtonsSoft && pEmu3btn->emulate3Pending)
729 buttonTimer(pEmu3btn);
731 if (pEmu3btn->emulate3Buttons
732 && ((bmask & BMASK_MIDDLE) == 0 || Emulate3ButtonsSoft(pEmu3btn))) {
739 &stateTab[pEmu3btn->emulateState].buttons[emulateButtons];
754 pEmu3btn->emulateState = button_action->new_state;
756 timeout_action = &stateTab[pEmu3btn->emulateState].timeout;
758 pEmu3btn->emulate3Expires =
759 GetTimeInMillis() + pEmu3btn->emulate3Timeout;
760 pEmu3btn->emulate3Pending = TRUE;
762 pEmu3btn->emulate3Pending = FALSE;