]> git.pld-linux.org Git - packages/firefox.git/blame - mozilla-firefox-pango-cursor-position.patch
- updated to 3.5rc3
[packages/firefox.git] / mozilla-firefox-pango-cursor-position.patch
CommitLineData
e36ee87a 1Index: mozilla/gfx/src/gtk/nsFontMetricsPango.cpp
2===================================================================
3RCS file: /cvsroot/mozilla/gfx/src/gtk/nsFontMetricsPango.cpp,v
4retrieving revision 1.24
5diff -d -u -p -6 -r1.24 nsFontMetricsPango.cpp
6--- mozilla/gfx/src/gtk/nsFontMetricsPango.cpp 25 Aug 2006 01:02:34 -0000 1.24
7+++ mozilla/gfx/src/gtk/nsFontMetricsPango.cpp 6 Sep 2006 07:01:49 -0000
8@@ -948,13 +948,12 @@ nsFontMetricsPango::GetClusterInfo(const
9 PRInt32
10 nsFontMetricsPango::GetPosition(const PRUnichar *aText, PRUint32 aLength,
11 nsPoint aPt)
12 {
13 int trailing = 0;
14 int inx = 0;
15- gboolean found = FALSE;
16 const gchar *curChar;
17 PRInt32 retval = 0;
18
19 float f = mDeviceContext->AppUnitsToDevUnits();
20
21 PangoLayout *layout = pango_layout_new(mPangoContext);
22@@ -974,28 +973,18 @@ nsFontMetricsPango::GetPosition(const PR
23 }
24
25 // Set up the pango layout
26 pango_layout_set_text(layout, text, strlen(text));
27 FixupSpaceWidths(layout, text);
28
29- found = pango_layout_xy_to_index(layout, localX, localY,
30- &inx, &trailing);
31+ pango_layout_xy_to_index(layout, localX, localY,
32+ &inx, &trailing);
33
34 // Convert the index back to the utf-16 index
35 curChar = text;
36
37- // Jump to the end if it's not found.
38- if (!found) {
39- if (inx == 0)
40- retval = 0;
41- else if (trailing)
42- retval = aLength;
43-
44- goto loser;
45- }
46-
47 for (PRUint32 curOffset=0; curOffset < aLength;
48 curOffset++, curChar = g_utf8_find_next_char(curChar, NULL)) {
49
50 // Check for a match before checking for a surrogate pair
51 if (curChar - text == inx) {
52 retval = curOffset;
This page took 0.082238 seconds and 4 git commands to generate.