GtkScrolledWindow: Don't require proximity for track points

These are hard to navigate precisely, so show wide scrollbars
right away.
This commit is contained in:
Matthias Clasen 2015-01-09 21:09:22 -05:00
parent 2a3a7306ef
commit 11eb64a2b6

View File

@ -1040,7 +1040,6 @@ captured_event_cb (GtkWidget *widget,
GtkScrolledWindow *sw; GtkScrolledWindow *sw;
GdkInputSource input_source; GdkInputSource input_source;
GdkDevice *source_device; GdkDevice *source_device;
gboolean indicator_close;
sw = GTK_SCROLLED_WINDOW (widget); sw = GTK_SCROLLED_WINDOW (widget);
priv = sw->priv; priv = sw->priv;
@ -1064,17 +1063,18 @@ captured_event_cb (GtkWidget *widget,
indicator_start_fade (&priv->hindicator, 1.0); indicator_start_fade (&priv->hindicator, 1.0);
indicator_start_fade (&priv->vindicator, 1.0); indicator_start_fade (&priv->vindicator, 1.0);
/* Check whether we're hovering close to the vertical scrollbar */ if (strstr (gdk_device_get_name (source_device), "TrackPoint"))
indicator_close = check_update_scrollbar_proximity (sw, &priv->vindicator,
event);
if (!indicator_close)
{ {
/* Otherwise check the horizontal scrollbar */ indicator_set_over (&priv->hindicator, TRUE);
check_update_scrollbar_proximity (sw, &priv->hindicator, event); indicator_set_over (&priv->vindicator, TRUE);
} }
else else
indicator_set_over (&priv->hindicator, FALSE); {
if (!check_update_scrollbar_proximity (sw, &priv->vindicator, event))
check_update_scrollbar_proximity (sw, &priv->hindicator, event);
else
indicator_set_over (&priv->hindicator, FALSE);
}
} }
else if (event->type == GDK_LEAVE_NOTIFY && else if (event->type == GDK_LEAVE_NOTIFY &&
event->crossing.mode == GDK_CROSSING_UNGRAB) event->crossing.mode == GDK_CROSSING_UNGRAB)