[gtk+] Make selecting the last character work again
- From: Matthias Clasen <matthiasc src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [gtk+] Make selecting the last character work again
- Date: Fri, 9 Oct 2009 05:11:08 +0000 (UTC)
commit 088baaec31705d2efa6e66d7ab14139c154320c2
Author: Matthias Clasen <mclasen redhat com>
Date: Fri Oct 9 07:08:54 2009 +0200
Make selecting the last character work again
This broke when I added link support. git bisect helped to track it
down.
gtk/gtklabel.c | 28 +++++++++++++---------------
1 files changed, 13 insertions(+), 15 deletions(-)
---
diff --git a/gtk/gtklabel.c b/gtk/gtklabel.c
index 4577eec..acf7f53 100644
--- a/gtk/gtklabel.c
+++ b/gtk/gtklabel.c
@@ -3841,6 +3841,7 @@ get_layout_index (GtkLabel *label,
gint trailing = 0;
const gchar *cluster;
const gchar *cluster_end;
+ gboolean inside;
*index = 0;
@@ -3851,24 +3852,21 @@ get_layout_index (GtkLabel *label,
x *= PANGO_SCALE;
y *= PANGO_SCALE;
- if (pango_layout_xy_to_index (label->layout,
- x, y,
- index, &trailing))
- {
- cluster = label->text + *index;
- cluster_end = cluster;
- while (trailing)
- {
- cluster_end = g_utf8_next_char (cluster_end);
- --trailing;
- }
-
- *index += (cluster_end - cluster);
+ inside = pango_layout_xy_to_index (label->layout,
+ x, y,
+ index, &trailing);
- return TRUE;
+ cluster = label->text + *index;
+ cluster_end = cluster;
+ while (trailing)
+ {
+ cluster_end = g_utf8_next_char (cluster_end);
+ --trailing;
}
- return FALSE;
+ *index += (cluster_end - cluster);
+
+ return inside;
}
static void
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]