Получение 2 сообщений pointerup для 1 сообщения pointerdown в chrome или firefox
Всем Привет,
Я фиксирую количество событий касания PointerDown и PointerUp, используя глобальный крюк 'WH_GETMESSAGE'. За каждое касание PointerDown я должен получить одно касание PointerUp. Но в случае сенсорных событий внутри google chrome или firefox я получаю 2 события pointerUp для 1 события pointerDown. Есть идеи, почему? Кроме того, есть ли какой-нибудь способ узнать, прикасаюсь ли я к окну google chrome или firefox
Что я уже пробовал:
LRESULT CALLBACK GetMsgProc(int nCode, WPARAM wParam, LPARAM lParam) { LPMSG lpMsg = (LPMSG)lParam; UINT32 pointerId = GET_POINTERID_WPARAM(lpMsg->wParam); switch (lpMsg->message) { case WM_POINTERDOWN: POINTER_INPUT_TYPE pointerType; GetPointerType(pointerId, &pointerType); if (pointerType == PT_TOUCH) OutputDebugString(TEXT("Hook: PointerDown Touch")); return CallNextHookEx(NULL, nCode, wParam, lParam); case WM_POINTERUP: POINTER_INPUT_TYPE pointerTypeUp; GetPointerType(pointerId, &pointerTypeUp); if (pointerTypeUp == PT_TOUCH) OutputDebugString(TEXT("Hook: PointerUp Touch")); return CallNextHookEx(NULL, nCode, wParam, lParam); } return CallNextHookEx(NULL, nCode, wParam, lParam); }