Mercurial > dwindows
diff gtk4/dw.c @ 2618:156ad91481eb
WARNING: Standardize button press and release button parameter values.
This may break existing code using 3rd mouse button press/release events.
The motion callback and OS/2 had been passing the 3rd mouse button as value 4.
Other platforms were passing it as value 3. Since button/press and release
events only have a single button values 1,2,3 were unique... but OS/2 was
passing the mask value instead, making these not work cross platform.
I decided to make the button press/release and motion events all function the
same. Passing the mask values instead of button numbers. This change will
only affect button 3 on button press or release events on Windows, Mac and GTK.
OS/2 already functioned this way, iOS and Android do not support button 3.
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Fri, 23 Jul 2021 20:26:56 +0000 |
parents | 2acc7ba5dea0 |
children | 401a3b9f21ba |
line wrap: on
line diff
--- a/gtk4/dw.c Fri Jul 23 19:42:06 2021 +0000 +++ b/gtk4/dw.c Fri Jul 23 20:26:56 2021 +0000 @@ -717,9 +717,9 @@ int mybutton = gtk_gesture_single_get_current_button(gesture); if(mybutton == 3) - mybutton = 2; + mybutton = DW_BUTTON2_MASK; else if(mybutton == 2) - mybutton = 3; + mybutton = DW_BUTTON3_MASK; retval = buttonfunc(work.window, (int)x, (int)y, mybutton, work.data); } @@ -737,9 +737,9 @@ int mybutton = gtk_gesture_single_get_current_button(gesture); if(mybutton == 3) - mybutton = 2; + mybutton = DW_BUTTON2_MASK; else if(mybutton == 2) - mybutton = 3; + mybutton = DW_BUTTON3_MASK; retval = buttonfunc(work.window, (int)x, (int)y, mybutton, work.data); }