diff options
author | Owen Taylor <otaylor@redhat.com> | 2002-02-14 05:18:44 +0000 |
---|---|---|
committer | Owen Taylor <otaylor@src.gnome.org> | 2002-02-14 05:18:44 +0000 |
commit | b4edb9da990a3293fd19a90c2f9597776ad4a188 (patch) | |
tree | 14ed76abc491d4da8e48dae8a4f46a895ee2467c /gtk/gtktooltips.c | |
parent | a5915e56383a0308ed497dd3c833dd6de6bdaa65 (diff) | |
download | gtk+-b4edb9da990a3293fd19a90c2f9597776ad4a188.tar.gz |
Only pop the tooltip down on a select set of events, not on any unknown
Thu Feb 14 00:10:09 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtktooltips.c (gtk_tooltips_event_handler): Only
pop the tooltip down on a select set of events, not
on any unknown event. (#71157, Jody Goldberg)
* gtk/gtktooltips.c (gtk_tooltips_event_handler):
Fix some warnings.
Diffstat (limited to 'gtk/gtktooltips.c')
-rw-r--r-- | gtk/gtktooltips.c | 24 |
1 files changed, 16 insertions, 8 deletions
diff --git a/gtk/gtktooltips.c b/gtk/gtktooltips.c index 04a46d0664..359aae9df8 100644 --- a/gtk/gtktooltips.c +++ b/gtk/gtktooltips.c @@ -523,7 +523,7 @@ gtk_tooltips_event_handler (GtkWidget *widget, if ((event->type == GDK_LEAVE_NOTIFY || event->type == GDK_ENTER_NOTIFY) && event->crossing.detail == GDK_NOTIFY_INFERIOR) - return FALSE; + return; old_tips_data = gtk_tooltips_data_get (widget); tooltips = old_tips_data->tooltips; @@ -544,9 +544,12 @@ gtk_tooltips_event_handler (GtkWidget *widget, } else { - event_widget = gtk_get_event_widget (event); - if (event_widget != widget) - return FALSE; + if (event->type != GDK_KEY_PRESS && event->type != GDK_KEY_RELEASE) + { + event_widget = gtk_get_event_widget (event); + if (event_widget != widget) + return; + } switch (event->type) { @@ -585,14 +588,19 @@ gtk_tooltips_event_handler (GtkWidget *widget, tooltips->use_sticky_delay = use_sticky_delay; } break; - - default: + + case GDK_BUTTON_PRESS: + case GDK_BUTTON_RELEASE: + case GDK_KEY_PRESS: + case GDK_KEY_RELEASE: + case GDK_PROXIMITY_IN: + case GDK_SCROLL: gtk_tooltips_set_active_widget (tooltips, NULL); break; + default: + break; } } - - return FALSE; } static void |