diff --git a/QtScrcpy/device/controller/inputconvert/inputconvertgame.cpp b/QtScrcpy/device/controller/inputconvert/inputconvertgame.cpp index da93d83..4f24dfb 100644 --- a/QtScrcpy/device/controller/inputconvert/inputconvertgame.cpp +++ b/QtScrcpy/device/controller/inputconvert/inputconvertgame.cpp @@ -164,8 +164,15 @@ void InputConvertGame::sendTouchEvent(int id, QPointF pos, AndroidMotioneventAct if (!controlMsg) { return; } - controlMsg->setInjectTouchMsgData( - static_cast(id), action, static_cast(0), QRect(calcFrameAbsolutePos(pos).toPoint(), m_frameSize), 1.0f); + + QPoint absolutePos = calcFrameAbsolutePos(pos).toPoint(); + static QPoint lastAbsolutePos = absolutePos; + if (AMOTION_EVENT_ACTION_MOVE == action && lastAbsolutePos == absolutePos) { + return; + } + lastAbsolutePos = absolutePos; + + controlMsg->setInjectTouchMsgData(static_cast(id), action, static_cast(0), QRect(absolutePos, m_frameSize), 1.0f); sendControlMsg(controlMsg); }