+static gboolean
+on_row_boundary (const GtkSheet *sheet, gint y, gint *row)
+{
+ gint r;
+
+ y += sheet->vadjustment->value;
+
+ r = row_from_ypixel (sheet, y);
+
+ if ( row_from_ypixel (sheet, y - DRAG_WIDTH / 2) < r )
+ {
+ *row = r - 1;
+ return TRUE;
+ }
+
+ if ( row_from_ypixel (sheet, y + DRAG_WIDTH / 2) > r )
+ {
+ *row = r;
+ return TRUE;
+ }
+
+ return FALSE;
+}
+
+