[gnumeric] Fix sheet focus after resizing. [#687188]



commit a278df1b90d9e56649e565e955cb9d988fb1f3c4
Author: Jean Brefort <jean brefort normalesup org>
Date:   Sun Nov 4 08:43:04 2012 +0100

    Fix sheet focus after resizing. [#687188]

 ChangeLog                         |    4 ++++
 NEWS                              |    1 +
 src/dialogs/ChangeLog             |    5 +++++
 src/dialogs/dialog-sheet-resize.c |    3 +++
 src/sheet.c                       |    8 ++++++++
 5 files changed, 21 insertions(+), 0 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index 58518ca..44092e0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2012-11-04  Jean Brefort  <jean brefort normalesup org>
+
+	* src/sheet.c: add API doc for sheet_cells to fix an introspection warning.
+
 2012-11-03  Morten Welinder  <terra gnome org>
 
 	* src/sheet-style.c (sheet_style_get_row2): New function.
diff --git a/NEWS b/NEWS
index 0572c25..d0eff7f 100644
--- a/NEWS
+++ b/NEWS
@@ -9,6 +9,7 @@ Jean:
 	* Fixed indentation in cell format dialog. [#683576]
 	* Do not use filtered out values in graphs. [#687209]
 	* Fixed crash on interprocess image copying. [#687414]
+	*ÂFix sheet focus after resizing. [#687188]
 
 Morten:
 	* Fix xlsx save performance problems.  [#662058]  [#685530]
diff --git a/src/dialogs/ChangeLog b/src/dialogs/ChangeLog
index 813579f..e4da920 100644
--- a/src/dialogs/ChangeLog
+++ b/src/dialogs/ChangeLog
@@ -1,3 +1,8 @@
+2012-11-04  Jean Brefort  <jean brefort normalesup org>
+
+	* dialog-sheet-resize.c (cb_ok_clicked): fix sheet focus after resizing.
+	[#687188]
+
 2012-09-07  Jean Brefort  <jean brefort normalesup org>
 
 	* dialog-cell-format.c (fmt_dialog_init_align_page): fixed indentation.
diff --git a/src/dialogs/dialog-sheet-resize.c b/src/dialogs/dialog-sheet-resize.c
index c95ddcd..910f60c 100644
--- a/src/dialogs/dialog-sheet-resize.c
+++ b/src/dialogs/dialog-sheet-resize.c
@@ -111,6 +111,7 @@ cb_ok_clicked (ResizeState *state)
 	Workbook *wb;
 	gboolean all_sheets;
 	int cols, rows;
+	Sheet *cur_sheet;
 
 	get_sizes (state, &cols, &rows);
 	all_sheets = gtk_toggle_button_get_active
@@ -118,6 +119,7 @@ cb_ok_clicked (ResizeState *state)
 
 	wbc = WORKBOOK_CONTROL (state->wbcg);
 	wb = wb_control_get_workbook (wbc);
+	cur_sheet = wb_control_cur_sheet (wbc);
 	sheets = workbook_sheets (wb);
 	for (l = sheets; l; l = l->next) {
 		Sheet *this_sheet = l->data;
@@ -137,6 +139,7 @@ cb_ok_clicked (ResizeState *state)
 		cmd_resize_sheets (wbc, g_slist_reverse (changed_sheets),
 				   cols, rows);
 
+	wb_control_sheet_focus (wbc, cur_sheet);
 	gtk_widget_destroy (state->dialog);
 }
 
diff --git a/src/sheet.c b/src/sheet.c
index 58c5703..87824a3 100644
--- a/src/sheet.c
+++ b/src/sheet.c
@@ -3736,6 +3736,14 @@ cell_ordering (gconstpointer a_, gconstpointer b_)
 	return a->pos.col - b->pos.col;
 }
 
+/**
+ * sheet_cells:
+ * @sheet: a #Sheet
+ * @r: a #GnmRange
+ *
+ * Retrieves an array of all cells inside @r.
+ * Returns: (transfer container): the cells array.
+ **/
 GPtrArray *
 sheet_cells (Sheet *sheet, const GnmRange *r)
 {



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