anjuta r3700 - in trunk: . plugins/sourceview



Author: jhs
Date: Sat Feb 23 09:26:22 2008
New Revision: 3700
URL: http://svn.gnome.org/viewvc/anjuta?rev=3700&view=rev

Log:
2008-02-23  Johannes Schmid <jhs gnome org>

	* plugins/sourceview/sourceview.c: (on_insert_text):
	Fixed a problem with the \"insert-text\" signal that broke
	copy&paste sometimes

Modified:
   trunk/ChangeLog
   trunk/plugins/sourceview/sourceview.c

Modified: trunk/plugins/sourceview/sourceview.c
==============================================================================
--- trunk/plugins/sourceview/sourceview.c	(original)
+++ trunk/plugins/sourceview/sourceview.c	Sat Feb 23 09:26:22 2008
@@ -129,13 +129,16 @@
 		return;
 	else
 	{
+		int offset = gtk_text_iter_get_offset (location);
 		SourceviewCell* cell = sourceview_cell_new (location, 
 													GTK_TEXT_VIEW(sv->priv->view));
 		ianjuta_iterable_previous (IANJUTA_ITERABLE (cell), NULL);
+		g_signal_handlers_block_by_func (buffer, on_insert_text, sv);
 		g_signal_emit_by_name(G_OBJECT(sv), "char_added", cell, text[0]);
-		// Reset iterator
-		gtk_text_buffer_get_iter_at_mark (buffer, location,
-										  gtk_text_buffer_get_insert(buffer));
+		g_signal_handlers_unblock_by_func (buffer, on_insert_text, sv);
+		/* Reset iterator */
+		gtk_text_buffer_get_iter_at_offset (buffer, location,
+											offset);
 	}
 }
 



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