summaryrefslogtreecommitdiff
path: root/gtk/gtktextbtree.c
diff options
context:
space:
mode:
authorHavoc Pennington <hp@redhat.com>2000-11-07 21:01:02 +0000
committerHavoc Pennington <hp@src.gnome.org>2000-11-07 21:01:02 +0000
commitf1de9df0511db6e82ee12c8e7f78d68d7a31cbbe (patch)
treee7c7ec7be138908bef2c5395d50ab6710f86f6d9 /gtk/gtktextbtree.c
parent163dc54dea828d41fe12eb762c730e57444d63f3 (diff)
downloadgtk+-f1de9df0511db6e82ee12c8e7f78d68d7a31cbbe.tar.gz
rename to gtk_text_mark_get_visible
2000-11-07 Havoc Pennington <hp@redhat.com> * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename to gtk_text_mark_get_visible * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix bug that was generating an invalid iterator * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to ensure_char_offsets() in front of code placing the iter in an invalid state. * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary): make override_location arg const (paste): Replace the selection if we paste into the current selection * gtk/gtkselection.h: Remove "GtkSelectioData" (struct _GtkSelectionData): move the definition here. * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection): Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement (gtk_text_buffer_insert_range_interactive): implement (gtk_text_buffer_get_tags): Remove, replaced by gtk_text_iter_get_tags() * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search limit parameter, to avoid infinite linear scan. (gtk_text_iter_backward_search): Add search limit (gtk_text_iter_forward_find_char): Add search limit (gtk_text_iter_backward_find_char): Add search limit
Diffstat (limited to 'gtk/gtktextbtree.c')
-rw-r--r--gtk/gtktextbtree.c32
1 files changed, 23 insertions, 9 deletions
diff --git a/gtk/gtktextbtree.c b/gtk/gtktextbtree.c
index b73ba456c6..8654c29235 100644
--- a/gtk/gtktextbtree.c
+++ b/gtk/gtktextbtree.c
@@ -2435,13 +2435,13 @@ ensure_not_off_end (GtkTextBTree *tree,
}
static GtkTextLineSegment*
-real_set_mark (GtkTextBTree *tree,
- GtkTextMark *existing_mark,
- const gchar *name,
- gboolean left_gravity,
+real_set_mark (GtkTextBTree *tree,
+ GtkTextMark *existing_mark,
+ const gchar *name,
+ gboolean left_gravity,
const GtkTextIter *where,
- gboolean should_exist,
- gboolean redraw_selections)
+ gboolean should_exist,
+ gboolean redraw_selections)
{
GtkTextLineSegment *mark;
GtkTextIter iter;
@@ -2465,10 +2465,14 @@ real_set_mark (GtkTextBTree *tree,
}
/* OK if !should_exist and it does already exist, in that case
- we just move it. */
-
+ * we just move it.
+ */
+
iter = *where;
+ if (gtk_debug_flags & GTK_DEBUG_TEXT)
+ gtk_text_iter_check (&iter);
+
if (mark != NULL)
{
if (redraw_selections &&
@@ -2519,6 +2523,9 @@ real_set_mark (GtkTextBTree *tree,
mark);
}
+ if (gtk_debug_flags & GTK_DEBUG_TEXT)
+ gtk_text_iter_check (&iter);
+
/* Link mark into new location */
gtk_text_btree_link_segment (mark, &iter);
@@ -2531,6 +2538,12 @@ real_set_mark (GtkTextBTree *tree,
redisplay_mark_if_visible (mark);
+ if (gtk_debug_flags & GTK_DEBUG_TEXT)
+ gtk_text_iter_check (&iter);
+
+ if (gtk_debug_flags & GTK_DEBUG_TEXT)
+ gtk_text_btree_check (tree);
+
return mark;
}
@@ -3716,7 +3729,8 @@ gtk_text_line_byte_to_char_offsets (GtkTextLine *line,
g_assert (seg->char_count > 0); /* indexable. */
/* offset is now the number of bytes into the current segment we
- want to go. Count chars into the current segment. */
+ * want to go. Count chars into the current segment.
+ */
if (seg->type == &gtk_text_char_type)
{