summaryrefslogtreecommitdiff
path: root/gtk/gtktextdisplay.c
diff options
context:
space:
mode:
authorMatthias Clasen <maclas@gmx.de>2002-12-25 21:02:25 +0000
committerMatthias Clasen <matthiasc@src.gnome.org>2002-12-25 21:02:25 +0000
commit657c65ed4bef8fd16049197163151e33722b8b5a (patch)
tree3f7cb9fc29be391166be7d6965c283c91c623612 /gtk/gtktextdisplay.c
parent783239524314e48d2d1ee908394d9e4416279037 (diff)
downloadgdk-pixbuf-657c65ed4bef8fd16049197163151e33722b8b5a.tar.gz
Fix highlighting of selection wrt. to empty lines. (#90435, #90582)
2002-12-25 Matthias Clasen <maclas@gmx.de> * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix highlighting of selection wrt. to empty lines. (#90435, #90582) * gtk/gtktextview.c (gtk_text_view_preedit_changed_handler): Keep the cursor on screen. (#96929)
Diffstat (limited to 'gtk/gtktextdisplay.c')
-rw-r--r--gtk/gtktextdisplay.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gtk/gtktextdisplay.c b/gtk/gtktextdisplay.c
index e531a4652..4be120d80 100644
--- a/gtk/gtktextdisplay.c
+++ b/gtk/gtktextdisplay.c
@@ -803,7 +803,8 @@ gtk_text_layout_draw (GtkTextLayout *layout,
&line_start,
line, 0);
line_end = line_start;
- gtk_text_iter_forward_to_line_end (&line_end);
+ if (!gtk_text_iter_ends_line (&line_end))
+ gtk_text_iter_forward_to_line_end (&line_end);
byte_count = gtk_text_iter_get_line_index (&line_end);
if (gtk_text_iter_compare (&selection_start, &line_end) <= 0 &&
@@ -817,7 +818,7 @@ gtk_text_layout_draw (GtkTextLayout *layout,
if (gtk_text_iter_compare (&selection_end, &line_end) <= 0)
selection_end_index = gtk_text_iter_get_line_index (&selection_end);
else
- selection_end_index = byte_count;
+ selection_end_index = MAX(byte_count, 1);
}
}