summaryrefslogtreecommitdiff
path: root/libcaja-private/caja-icon-container.c
diff options
context:
space:
mode:
authorraveit65 <[email protected]>2016-10-16 07:59:32 +0200
committerlukefromdc <[email protected]>2016-10-16 14:07:29 -0400
commit986490bbb94b33047453a4a82909088862435fbe (patch)
treeaeb8c2bab670ad00929edfac247b8070cdca8516 /libcaja-private/caja-icon-container.c
parenta79bec599478cf32134105c75e73775ba74f9013 (diff)
downloadcaja-986490bbb94b33047453a4a82909088862435fbe.tar.bz2
caja-986490bbb94b33047453a4a82909088862435fbe.tar.xz
GTK+2: use eel helper again to set adjustment values
This reverts https://github.com/mate-desktop/caja/commit/1f7ab5d for gtk2 Fixes https://github.com/mate-desktop/caja/issues/659
Diffstat (limited to 'libcaja-private/caja-icon-container.c')
-rw-r--r--libcaja-private/caja-icon-container.c36
1 files changed, 36 insertions, 0 deletions
diff --git a/libcaja-private/caja-icon-container.c b/libcaja-private/caja-icon-container.c
index 3e1f7915..24114381 100644
--- a/libcaja-private/caja-icon-container.c
+++ b/libcaja-private/caja-icon-container.c
@@ -641,8 +641,13 @@ caja_icon_container_scroll (CajaIconContainer *container,
old_h_value = gtk_adjustment_get_value (hadj);
old_v_value = gtk_adjustment_get_value (vadj);
+#if GTK_CHECK_VERSION (3, 0, 0)
gtk_adjustment_set_value (hadj, gtk_adjustment_get_value (hadj) + delta_x);
gtk_adjustment_set_value (vadj, gtk_adjustment_get_value (vadj) + delta_y);
+#else
+ eel_gtk_adjustment_set_value (hadj, gtk_adjustment_get_value (hadj) + delta_x);
+ eel_gtk_adjustment_set_value (vadj, gtk_adjustment_get_value (vadj) + delta_y);
+#endif
/* return TRUE if we did scroll */
return gtk_adjustment_get_value (hadj) != old_h_value || gtk_adjustment_get_value (vadj) != old_v_value;
@@ -796,6 +801,7 @@ reveal_icon (CajaIconContainer *container,
item_get_canvas_bounds (EEL_CANVAS_ITEM (icon->item), &bounds, TRUE);
}
if (bounds.y0 < gtk_adjustment_get_value (vadj)) {
+#if GTK_CHECK_VERSION (3, 0, 0)
gtk_adjustment_set_value (vadj, bounds.y0);
} else if (bounds.y1 > gtk_adjustment_get_value (vadj) + allocation.height) {
gtk_adjustment_set_value (vadj, bounds.y1 - allocation.height);
@@ -808,6 +814,20 @@ reveal_icon (CajaIconContainer *container,
gtk_adjustment_set_value (hadj, bounds.x0);
} else {
gtk_adjustment_set_value (hadj, bounds.x1 - allocation.width);
+#else
+ eel_gtk_adjustment_set_value (vadj, bounds.y0);
+ } else if (bounds.y1 > gtk_adjustment_get_value (vadj) + allocation.height) {
+ eel_gtk_adjustment_set_value (vadj, bounds.y1 - allocation.height);
+ }
+
+ if (bounds.x0 < gtk_adjustment_get_value (hadj)) {
+ eel_gtk_adjustment_set_value (hadj, bounds.x0);
+ } else if (bounds.x1 > gtk_adjustment_get_value (hadj) + allocation.width) {
+ if (bounds.x1 - allocation.width > bounds.x0) {
+ eel_gtk_adjustment_set_value (hadj, bounds.x0);
+ } else {
+ eel_gtk_adjustment_set_value (hadj, bounds.x1 - allocation.width);
+#endif
}
}
}
@@ -1248,6 +1268,13 @@ caja_icon_container_update_scroll_region (CajaIconContainer *container)
{
gtk_adjustment_set_step_increment (vadj, step_increment);
}
+#if !GTK_CHECK_VERSION (3, 0, 0)
+ /* Now that we have a new scroll region, clamp the
+ * adjustments so we are within the valid scroll area.
+ */
+ eel_gtk_adjustment_clamp_value (hadj);
+ eel_gtk_adjustment_clamp_value (vadj);
+#endif
}
static int
@@ -7509,12 +7536,21 @@ caja_icon_container_scroll_to_icon (CajaIconContainer *container,
if (caja_icon_container_is_layout_vertical (container)) {
if (caja_icon_container_is_layout_rtl (container)) {
+#if GTK_CHECK_VERSION (3, 0, 0)
gtk_adjustment_set_value (hadj, bounds.x1 - allocation.width);
} else {
gtk_adjustment_set_value (hadj, bounds.x0);
}
} else {
gtk_adjustment_set_value (vadj, bounds.y0);
+#else
+ eel_gtk_adjustment_set_value (hadj, bounds.x1 - allocation.width);
+ } else {
+ eel_gtk_adjustment_set_value (hadj, bounds.x0);
+ }
+ } else {
+ eel_gtk_adjustment_set_value (vadj, bounds.y0);
+#endif
}
}