mirror of
https://github.com/moonlight-stream/moonlight-android.git
synced 2026-04-22 16:26:41 +00:00
Properly handle pointer down and up events
This commit is contained in:
@@ -149,6 +149,26 @@ public class Game extends Activity {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onTouchEvent(MotionEvent event) {
|
||||||
|
if ((event.getSource() & InputDevice.SOURCE_CLASS_POINTER) != 0)
|
||||||
|
{
|
||||||
|
switch (event.getActionMasked())
|
||||||
|
{
|
||||||
|
case MotionEvent.ACTION_DOWN:
|
||||||
|
conn.sendMouseButtonDown();
|
||||||
|
break;
|
||||||
|
case MotionEvent.ACTION_UP:
|
||||||
|
conn.sendMouseButtonUp();
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
return super.onTouchEvent(event);
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return super.onTouchEvent(event);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onGenericMotionEvent(MotionEvent event) {
|
public boolean onGenericMotionEvent(MotionEvent event) {
|
||||||
if ((event.getSource() & InputDevice.SOURCE_CLASS_JOYSTICK) != 0) {
|
if ((event.getSource() & InputDevice.SOURCE_CLASS_JOYSTICK) != 0) {
|
||||||
@@ -188,10 +208,6 @@ public class Game extends Activity {
|
|||||||
|
|
||||||
// Send a mouse move update (if neccessary)
|
// Send a mouse move update (if neccessary)
|
||||||
updateMousePosition(eventX, eventY);
|
updateMousePosition(eventX, eventY);
|
||||||
|
|
||||||
// Update pointer location for delta calculation next time
|
|
||||||
lastMouseX = eventX;
|
|
||||||
lastMouseY = eventY;
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -205,11 +221,13 @@ public class Game extends Activity {
|
|||||||
lastMouseY != Integer.MIN_VALUE &&
|
lastMouseY != Integer.MIN_VALUE &&
|
||||||
!(lastMouseX == eventX && lastMouseY == eventY))
|
!(lastMouseX == eventX && lastMouseY == eventY))
|
||||||
{
|
{
|
||||||
System.out.printf("Delta X: 0x%x Delta Y: 0x%x\n",
|
|
||||||
(short)(eventX - lastMouseX), (short)(eventY - lastMouseY));
|
|
||||||
conn.sendMouseMove((short)(eventX - lastMouseX),
|
conn.sendMouseMove((short)(eventX - lastMouseX),
|
||||||
(short)(eventY - lastMouseY));
|
(short)(eventY - lastMouseY));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Update pointer location for delta calculation next time
|
||||||
|
lastMouseX = eventX;
|
||||||
|
lastMouseY = eventY;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void sendControllerInputPacket() {
|
private void sendControllerInputPacket() {
|
||||||
|
|||||||
Reference in New Issue
Block a user