[gtk: 3/15] gtkmain: Handle hold events
- From: Carlos Garnacho <carlosg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk: 3/15] gtkmain: Handle hold events
- Date: Wed, 26 Jan 2022 23:37:29 +0000 (UTC)
commit 0aa2a4ef14b0cd8f3ddfb3ddf21b8a98faea22dd
Author: José Expósito <jose exposito89 gmail com>
Date: Sun Jun 27 11:49:39 2021 +0200
gtkmain: Handle hold events
Part-of: <!3454>
gtk/gtkmain.c | 16 +++++++++++++++-
1 file changed, 15 insertions(+), 1 deletion(-)
---
diff --git a/gtk/gtkmain.c b/gtk/gtkmain.c
index bfab35ad61..aa32930242 100644
--- a/gtk/gtkmain.c
+++ b/gtk/gtkmain.c
@@ -915,6 +915,7 @@ rewrite_event_for_surface (GdkEvent *event,
case GDK_TOUCH_CANCEL:
case GDK_TOUCHPAD_SWIPE:
case GDK_TOUCHPAD_PINCH:
+ case GDK_TOUCHPAD_HOLD:
gdk_event_get_position (event, &x, &y);
gdk_surface_translate_coordinates (gdk_event_get_surface (event), new_surface, &x, &y);
break;
@@ -981,6 +982,14 @@ rewrite_event_for_surface (GdkEvent *event,
dx, dy,
gdk_touchpad_event_get_pinch_scale (event),
gdk_touchpad_event_get_pinch_angle_delta (event));
+ case GDK_TOUCHPAD_HOLD:
+ return gdk_touchpad_event_new_hold (new_surface,
+ gdk_event_get_device (event),
+ gdk_event_get_time (event),
+ gdk_event_get_modifier_state (event),
+ gdk_touchpad_event_get_gesture_phase (event),
+ x, y,
+ gdk_touchpad_event_get_n_fingers (event));
default:
break;
}
@@ -1020,6 +1029,7 @@ rewrite_event_for_grabs (GdkEvent *event)
case GDK_TOUCH_CANCEL:
case GDK_TOUCHPAD_SWIPE:
case GDK_TOUCHPAD_PINCH:
+ case GDK_TOUCHPAD_HOLD:
display = gdk_event_get_display (event);
device = gdk_event_get_device (event);
@@ -1270,6 +1280,7 @@ is_pointing_event (GdkEvent *event)
case GDK_TOUCH_CANCEL:
case GDK_TOUCHPAD_PINCH:
case GDK_TOUCHPAD_SWIPE:
+ case GDK_TOUCHPAD_HOLD:
case GDK_DRAG_ENTER:
case GDK_DRAG_LEAVE:
case GDK_DRAG_MOTION:
@@ -1353,7 +1364,8 @@ handle_pointing_event (GdkEvent *event)
device = gdk_seat_get_pointer (gdk_event_get_seat (event));
}
else if (type == GDK_TOUCHPAD_PINCH ||
- type == GDK_TOUCHPAD_SWIPE)
+ type == GDK_TOUCHPAD_SWIPE ||
+ type == GDK_TOUCHPAD_HOLD)
{
/* Another bit of a kludge, touchpad gesture sequences do not
* reflect on the pointer focus lookup.
@@ -1488,6 +1500,7 @@ handle_pointing_event (GdkEvent *event)
case GDK_SCROLL:
case GDK_TOUCHPAD_PINCH:
case GDK_TOUCHPAD_SWIPE:
+ case GDK_TOUCHPAD_HOLD:
break;
case GDK_GRAB_BROKEN:
if (gdk_grab_broken_event_get_implicit (event))
@@ -1662,6 +1675,7 @@ gtk_main_do_event (GdkEvent *event)
case GDK_TOUCH_CANCEL:
case GDK_TOUCHPAD_SWIPE:
case GDK_TOUCHPAD_PINCH:
+ case GDK_TOUCHPAD_HOLD:
case GDK_PAD_BUTTON_PRESS:
case GDK_PAD_BUTTON_RELEASE:
case GDK_PAD_RING:
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]