diff --git a/ChangeLog b/ChangeLog index 500aae7b38..523a16b555 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2006-03-02 Ross Burton + + * gtk/gtktooltips.c: + Disable tooltips if gtk-touchscreen-mode is activated (#315112). + 2006-03-01 Kristian Rietveld * gtk/gtktreeselection.c (row_is_selectable): rename to diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 500aae7b38..523a16b555 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,8 @@ +2006-03-02 Ross Burton + + * gtk/gtktooltips.c: + Disable tooltips if gtk-touchscreen-mode is activated (#315112). + 2006-03-01 Kristian Rietveld * gtk/gtktreeselection.c (row_is_selectable): rename to diff --git a/gtk/gtktooltips.c b/gtk/gtktooltips.c index 7fdf526c74..ed505915ce 100644 --- a/gtk/gtktooltips.c +++ b/gtk/gtktooltips.c @@ -610,6 +610,21 @@ stop_keyboard_mode (GtkWidget *widget) } } +static gboolean +tooltips_enabled (GtkTooltips *tooltips, GtkWidget *w) +{ + GtkSettings *settings; + gboolean touchscreen; + + if (!tooltips->enabled) + return FALSE; + + settings = gtk_widget_get_settings (w); + g_object_get (settings, "gtk-touchscreen-mode", &touchscreen, NULL); + + return !touchscreen; +} + static void gtk_tooltips_start_delay (GtkTooltips *tooltips, GtkWidget *widget) @@ -617,7 +632,7 @@ gtk_tooltips_start_delay (GtkTooltips *tooltips, GtkTooltipsData *old_tips_data; old_tips_data = tooltips->active_tips_data; - if (tooltips->enabled && + if (tooltips_enabled (tooltips, widget) && (!old_tips_data || old_tips_data->widget != widget)) { guint delay;