summaryrefslogtreecommitdiff
path: root/gtk/gtktooltip.c
diff options
context:
space:
mode:
authorTimm Bäder <mail@baedert.org>2019-01-18 09:16:44 +0100
committerTimm Bäder <mail@baedert.org>2019-01-18 19:43:51 +0100
commitc8ec0f42a02b77a856370b8bdc5c95e1174b5bab (patch)
tree2d0c87ea3009adb4047896a437f35b751a0a5195 /gtk/gtktooltip.c
parent2353e0e03f33b23682a58451c25026b07737c3aa (diff)
downloadgtk+-c8ec0f42a02b77a856370b8bdc5c95e1174b5bab.tar.gz
tooltip: Move tooltips enabled checks into tooltips_enabled
Diffstat (limited to 'gtk/gtktooltip.c')
-rw-r--r--gtk/gtktooltip.c37
1 files changed, 27 insertions, 10 deletions
diff --git a/gtk/gtktooltip.c b/gtk/gtktooltip.c
index 4590de4148..42f550c24e 100644
--- a/gtk/gtktooltip.c
+++ b/gtk/gtktooltip.c
@@ -841,6 +841,33 @@ tooltips_enabled (GdkEvent *event)
{
GdkDevice *source_device;
GdkInputSource source;
+ GdkModifierType event_state = 0;
+
+ switch ((guint)gdk_event_get_event_type (event))
+ {
+ case GDK_ENTER_NOTIFY:
+ case GDK_LEAVE_NOTIFY:
+ case GDK_BUTTON_PRESS:
+ case GDK_KEY_PRESS:
+ case GDK_DRAG_ENTER:
+ case GDK_GRAB_BROKEN:
+ case GDK_MOTION_NOTIFY:
+ case GDK_TOUCH_UPDATE:
+ case GDK_SCROLL:
+ break; /* OK */
+
+ default:
+ return FALSE;
+ }
+
+ gdk_event_get_state (event, &event_state);
+ if ((event_state &
+ (GDK_BUTTON1_MASK |
+ GDK_BUTTON2_MASK |
+ GDK_BUTTON3_MASK |
+ GDK_BUTTON4_MASK |
+ GDK_BUTTON5_MASK)) != 0)
+ return FALSE;
source_device = gdk_event_get_source_device (event);
@@ -862,20 +889,10 @@ _gtk_tooltip_handle_event (GdkEvent *event)
GtkWidget *target;
GdkSurface *surface;
gdouble dx, dy;
- GdkModifierType event_state = 0;
if (!tooltips_enabled (event))
return;
- gdk_event_get_state (event, &event_state);
- if ((event_state &
- (GDK_BUTTON1_MASK |
- GDK_BUTTON2_MASK |
- GDK_BUTTON3_MASK |
- GDK_BUTTON4_MASK |
- GDK_BUTTON5_MASK)) != 0)
- return;
-
event_type = gdk_event_get_event_type (event);
surface = gdk_event_get_surface (event);
gdk_event_get_coords (event, &dx, &dy);