[gnumeric] Fixed autofill issues. [#618687]



commit 812726e4098470c8e2fef885db4b793022864ef7
Author: Jean Brefort <jean brefort normalesup org>
Date:   Mon May 17 11:52:45 2010 +0200

    Fixed autofill issues. [#618687]

 ChangeLog         |    5 +++++
 NEWS              |    3 +++
 src/item-cursor.c |   10 +++++++---
 src/item-grid.c   |    2 +-
 4 files changed, 16 insertions(+), 4 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index 71d3b44..be6017c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2010-05-17  Jean Brefort  <jean brefort normalesup org>
+
+	* src/item-cursor.c (item_cursor_in_drag_handle),
+	(item_cursor_selection_motion): fixed autofill issues. [#618687]
+
 2010-05-07  Morten Welinder <terra gnome org>
 
 	* configure.in: Post-release bump.
diff --git a/NEWS b/NEWS
index 34035a9..bdb142b 100644
--- a/NEWS
+++ b/NEWS
@@ -2,6 +2,9 @@ Gnumeric 1.10.4
 
 Andreas:
 	* Include version number in HTML export.
+
+Jean
+	* Fixed autofill issues. [#618687]
  
 --------------------------------------------------------------------------
 Gnumeric 1.10.3
diff --git a/src/item-cursor.c b/src/item-cursor.c
index f544a81..7879a36 100644
--- a/src/item-cursor.c
+++ b/src/item-cursor.c
@@ -570,8 +570,12 @@ item_cursor_in_drag_handle (ItemCursor *ic, gint64 x, gint64 y)
 	if ((y_test-AUTO_HANDLE_SPACE) <= y &&
 	    y <= (y_test+AUTO_HANDLE_SPACE)) {
 		gint64 const x_test = ic->auto_fill_handle_at_left
-			? ic->canvas_item.x0 * scale + AUTO_HANDLE_WIDTH
-			: ic->canvas_item.x1 *scale - AUTO_HANDLE_WIDTH;
+			? (ic->canvas_item.canvas->direction == GOC_DIRECTION_RTL?
+			   	ic->canvas_item.x1 * scale - AUTO_HANDLE_WIDTH:
+				ic->canvas_item.x0 * scale + AUTO_HANDLE_WIDTH)
+			: (ic->canvas_item.canvas->direction == GOC_DIRECTION_RTL?
+				ic->canvas_item.x0 * scale + AUTO_HANDLE_WIDTH:
+				ic->canvas_item.x1 * scale - AUTO_HANDLE_WIDTH);
 		return (x_test-AUTO_HANDLE_SPACE) <= x &&
 			x <= (x_test+AUTO_HANDLE_SPACE);
 	 }
@@ -611,7 +615,7 @@ item_cursor_selection_motion (GocItem *item, double x_, double y_)
 	 * determine which part of the cursor was clicked:
 	 * the border or the handlebox
 	 */
-	if (item_cursor_in_drag_handle (ic, x, y))
+	if (item_cursor_in_drag_handle (ic, x_, y_))
 		style = ITEM_CURSOR_AUTOFILL;
 	else
 		style = ITEM_CURSOR_DRAG;
diff --git a/src/item-grid.c b/src/item-grid.c
index 69437a2..44b91e6 100644
--- a/src/item-grid.c
+++ b/src/item-grid.c
@@ -1007,7 +1007,7 @@ item_grid_motion (GocItem *item, double x_, double y_)
 		g_assert_not_reached ();
 	}
 
-		gnm_pane_handle_motion (pane, canvas, x, y,
+	gnm_pane_handle_motion (pane, canvas, x, y,
 		GNM_PANE_SLIDE_X | GNM_PANE_SLIDE_Y |
 		GNM_PANE_SLIDE_AT_COLROW_BOUND,
 		slide_handler, NULL);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]