GtkButton: do not prelight in touchscreen mode
Code was copied from GtkToggleButton. Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com> https://bugzilla.gnome.org/show_bug.cgi?id=689138
This commit is contained in:
committed by
Matthias Clasen
parent
6a6885c5c0
commit
0b5b2779a2
@@ -2066,15 +2066,19 @@ _gtk_button_set_depressed (GtkButton *button,
|
||||
static void
|
||||
gtk_button_update_state (GtkButton *button)
|
||||
{
|
||||
gboolean depressed;
|
||||
gboolean depressed, touchscreen;
|
||||
GtkStateType new_state;
|
||||
|
||||
g_object_get (gtk_widget_get_settings (GTK_WIDGET (button)),
|
||||
"gtk-touchscreen-mode", &touchscreen,
|
||||
NULL);
|
||||
|
||||
if (button->activate_timeout)
|
||||
depressed = button->depress_on_activate;
|
||||
else
|
||||
depressed = button->in_button && button->button_down;
|
||||
|
||||
if (button->in_button && (!button->button_down || !depressed))
|
||||
if (!touchscreen && button->in_button && (!button->button_down || !depressed))
|
||||
new_state = GTK_STATE_PRELIGHT;
|
||||
else
|
||||
new_state = depressed ? GTK_STATE_ACTIVE : GTK_STATE_NORMAL;
|
||||
|
||||
Reference in New Issue
Block a user