summaryrefslogtreecommitdiff
path: root/gtk/gtktextbuffer.c
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2004-11-01 19:57:13 +0000
committerMatthias Clasen <matthiasc@src.gnome.org>2004-11-01 19:57:13 +0000
commitf6608ba6710ae3001897b50165932d920407fe01 (patch)
tree119a77648371bdde125513024abba5475ff2cf53 /gtk/gtktextbuffer.c
parent51663a12d84994854c6f71d9cc222283f72dfbc6 (diff)
downloadgtk+-f6608ba6710ae3001897b50165932d920407fe01.tar.gz
Revalidate the iter. (#156924, Murray Cumming)
2004-11-01 Matthias Clasen <mclasen@redhat.com> * gtk/gtktextbuffer.c (gtk_text_buffer_backspace): Revalidate the iter. (#156924, Murray Cumming)
Diffstat (limited to 'gtk/gtktextbuffer.c')
-rw-r--r--gtk/gtktextbuffer.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/gtk/gtktextbuffer.c b/gtk/gtktextbuffer.c
index 96f2bc6817..ebcd2d42f5 100644
--- a/gtk/gtktextbuffer.c
+++ b/gtk/gtktextbuffer.c
@@ -629,7 +629,7 @@ gtk_text_buffer_insert_at_cursor (GtkTextBuffer *buffer,
* @len: length of text in bytes, or -1
* @default_editable: default editability of buffer
*
- * Like gtk_text_buffer_insert (), but the insertion will not occur if
+ * Like gtk_text_buffer_insert(), but the insertion will not occur if
* @iter is at a non-editable location in the buffer. Usually you
* want to prevent insertions at ineditable locations if the insertion
* results from a user action (is interactive).
@@ -3322,12 +3322,14 @@ gtk_text_buffer_delete_selection (GtkTextBuffer *buffer,
* key with the cursor at the position specified by @iter. In the
* normal case a single character will be deleted, but when
* combining accents are involved, more than one character can
- * be deleted, and when precomposed character and accent combinations,
- * less than one character will be deleted.
- *
- * @iter must be at a cursor position.
+ * be deleted, and when precomposed character and accent combinations
+ * are involved, less than one character will be deleted.
+ *
+ * Because the buffer is modified, all outstanding iterators become
+ * invalid after calling this function; however, the @iter will be
+ * re-initialized to point to the location where text was deleted.
*
- * Return value: %TRUE if tbe buffer was modified
+ * Return value: %TRUE if the buffer was modified
* Since: 2.6
**/
@@ -3402,6 +3404,9 @@ gtk_text_buffer_backspace (GtkTextBuffer *buffer,
g_free (cluster_text);
+ /* Revalidate the users iter */
+ *iter = start;
+
return retval;
}