Alexandre Julliard : wineandroid: Handle additional mouse event types.

Alexandre Julliard julliard at winehq.org
Tue Jan 30 14:38:14 CST 2018


Module: wine
Branch: master
Commit: e29678dae684fc75acc2d02b878317bb55539c9e
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=e29678dae684fc75acc2d02b878317bb55539c9e

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Tue Jan 30 12:38:56 2018 +0100

wineandroid: Handle additional mouse event types.

Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/wineandroid.drv/window.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/dlls/wineandroid.drv/window.c b/dlls/wineandroid.drv/window.c
index 22e2181..7d2049d 100644
--- a/dlls/wineandroid.drv/window.c
+++ b/dlls/wineandroid.drv/window.c
@@ -285,9 +285,12 @@ jboolean motion_event( JNIEnv *env, jobject obj, jint win, jint action, jint x,
 
     if (!( mask == AMOTION_EVENT_ACTION_DOWN ||
            mask == AMOTION_EVENT_ACTION_UP ||
+           mask == AMOTION_EVENT_ACTION_CANCEL ||
            mask == AMOTION_EVENT_ACTION_SCROLL ||
            mask == AMOTION_EVENT_ACTION_MOVE ||
-           mask == AMOTION_EVENT_ACTION_HOVER_MOVE ))
+           mask == AMOTION_EVENT_ACTION_HOVER_MOVE ||
+           mask == AMOTION_EVENT_ACTION_BUTTON_PRESS ||
+           mask == AMOTION_EVENT_ACTION_BUTTON_RELEASE ))
         return JNI_FALSE;
 
     prev_state = InterlockedExchange( &button_state, state );
@@ -304,6 +307,7 @@ jboolean motion_event( JNIEnv *env, jobject obj, jint win, jint action, jint x,
     switch (action & AMOTION_EVENT_ACTION_MASK)
     {
     case AMOTION_EVENT_ACTION_DOWN:
+    case AMOTION_EVENT_ACTION_BUTTON_PRESS:
         if ((state & ~prev_state) & AMOTION_EVENT_BUTTON_PRIMARY)
             data.motion.input.u.mi.dwFlags |= MOUSEEVENTF_LEFTDOWN;
         if ((state & ~prev_state) & AMOTION_EVENT_BUTTON_SECONDARY)
@@ -314,6 +318,8 @@ jboolean motion_event( JNIEnv *env, jobject obj, jint win, jint action, jint x,
             data.motion.input.u.mi.dwFlags |= MOUSEEVENTF_LEFTDOWN;
         break;
     case AMOTION_EVENT_ACTION_UP:
+    case AMOTION_EVENT_ACTION_CANCEL:
+    case AMOTION_EVENT_ACTION_BUTTON_RELEASE:
         if ((prev_state & ~state) & AMOTION_EVENT_BUTTON_PRIMARY)
             data.motion.input.u.mi.dwFlags |= MOUSEEVENTF_LEFTUP;
         if ((prev_state & ~state) & AMOTION_EVENT_BUTTON_SECONDARY)




More information about the wine-cvs mailing list