From e0cd01768a540ba9c4805fd03016dfa92dc48bd7 Mon Sep 17 00:00:00 2001 From: Jon Trowbridge Date: Sun, 9 Sep 2001 22:59:02 +0000 Subject: If our text shrinks, make sure that the selection doesn't spill off over 2001-09-09 Jon Trowbridge * gal/e-text/e-text.c (e_text_text_model_changed): If our text shrinks, make sure that the selection doesn't spill off over the end of the reduced buffer. (Related to bug #8535) svn path=/trunk/; revision=12717 --- widgets/text/e-text.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'widgets/text') diff --git a/widgets/text/e-text.c b/widgets/text/e-text.c index b0dd3261e7..225fb610a7 100644 --- a/widgets/text/e-text.c +++ b/widgets/text/e-text.c @@ -519,9 +519,16 @@ e_text_destroy (GtkObject *object) static void e_text_text_model_changed (ETextModel *model, EText *text) { + gint model_len = e_text_model_get_text_length (model); text->text = e_text_model_get_text(model); e_text_free_lines(text); + gtk_signal_emit (GTK_OBJECT (text), e_text_signals[E_TEXT_CHANGED]); + + /* Make sure our selection doesn't extend past the bounds of our text. */ + text->selection_start = CLAMP (text->selection_start, 0, model_len); + text->selection_end = CLAMP (text->selection_end, 0, model_len); + text->needs_split_into_lines = 1; e_canvas_item_request_reflow (GNOME_CANVAS_ITEM(text)); } -- cgit v1.2.3