[Scummvm-git-logs] scummvm master -> 59506440548e3e7b6acbaefb9f8ef5d5fd34f8d1
ccawley2011
ccawley2011 at gmail.com
Mon Jan 20 16:20:19 UTC 2020
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
5950644054 ANDROID: Check the KeyEvent source instead of using getRmbGuard()
Commit: 59506440548e3e7b6acbaefb9f8ef5d5fd34f8d1
https://github.com/scummvm/scummvm/commit/59506440548e3e7b6acbaefb9f8ef5d5fd34f8d1
Author: Cameron Cawley (ccawley2011 at gmail.com)
Date: 2020-01-20T16:19:49Z
Commit Message:
ANDROID: Check the KeyEvent source instead of using getRmbGuard()
Changed paths:
backends/platform/android/org/scummvm/scummvm/MouseHelper.java
backends/platform/android/org/scummvm/scummvm/ScummVMEvents.java
diff --git a/backends/platform/android/org/scummvm/scummvm/MouseHelper.java b/backends/platform/android/org/scummvm/scummvm/MouseHelper.java
index b0f81a7..40af18a 100644
--- a/backends/platform/android/org/scummvm/scummvm/MouseHelper.java
+++ b/backends/platform/android/org/scummvm/scummvm/MouseHelper.java
@@ -1,6 +1,7 @@
package org.scummvm.scummvm;
import android.view.InputDevice;
+import android.view.KeyEvent;
import android.view.MotionEvent;
import android.view.SurfaceView;
import android.view.View;
@@ -11,7 +12,6 @@ import android.view.View;
public class MouseHelper {
private View.OnHoverListener _listener;
private ScummVM _scummvm;
- private long _rmbGuardTime;
private boolean _rmbPressed;
private boolean _lmbPressed;
private boolean _mmbPressed;
@@ -51,6 +51,14 @@ public class MouseHelper {
main_surface.setOnHoverListener(_listener);
}
+ public static boolean isMouse(KeyEvent e) {
+ int source = e.getSource();
+
+ return ((source & InputDevice.SOURCE_MOUSE) == InputDevice.SOURCE_MOUSE) ||
+ ((source & InputDevice.SOURCE_STYLUS) == InputDevice.SOURCE_STYLUS) ||
+ ((source & InputDevice.SOURCE_TOUCHPAD) == InputDevice.SOURCE_TOUCHPAD);
+ }
+
public static boolean isMouse(MotionEvent e) {
if (e == null) {
return false;
@@ -109,7 +117,6 @@ public class MouseHelper {
if (_rmbPressed) {
// right mouse button was released just now
_scummvm.pushEvent(ScummVMEvents.JE_RMB_UP, (int)e.getX(), (int)e.getY(), e.getButtonState(), 0, 0, 0);
- _rmbGuardTime = System.currentTimeMillis();
}
_rmbPressed = false;
@@ -134,14 +141,4 @@ public class MouseHelper {
return true;
}
-
- /**
- * Checks whether right mouse button is pressed or was pressed just previously. This is used to prevent sending
- * extra back key on right mouse click which is the default behaviour in some platforms.
- *
- * @return true if right mouse button is (or was in the last 200ms) pressed
- */
- public boolean getRmbGuard() {
- return _rmbPressed || _rmbGuardTime + 200 > System.currentTimeMillis();
- }
}
diff --git a/backends/platform/android/org/scummvm/scummvm/ScummVMEvents.java b/backends/platform/android/org/scummvm/scummvm/ScummVMEvents.java
index 9c8dd16..9d76bc2 100644
--- a/backends/platform/android/org/scummvm/scummvm/ScummVMEvents.java
+++ b/backends/platform/android/org/scummvm/scummvm/ScummVMEvents.java
@@ -104,7 +104,7 @@ public class ScummVMEvents implements
if (keyCode == KeyEvent.KEYCODE_BACK) {
if (_mouseHelper != null) {
- if (_mouseHelper.getRmbGuard()) {
+ if (MouseHelper.isMouse(e)) {
// right mouse button was just clicked which sends an extra back button press (which should be ignored)
return true;
}
More information about the Scummvm-git-logs
mailing list