- Fix for cursor position in editor widgets by tagoh and behdad (#198759)
This commit is contained in:
		
							parent
							
								
									97845edb57
								
							
						
					
					
						commit
						7725c1adfe
					
				
							
								
								
									
										52
									
								
								firefox-1.5-pango-cursor-position.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										52
									
								
								firefox-1.5-pango-cursor-position.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,52 @@ | |||||||
|  | Index: mozilla/gfx/src/gtk/nsFontMetricsPango.cpp
 | ||||||
|  | ===================================================================
 | ||||||
|  | RCS file: /cvsroot/mozilla/gfx/src/gtk/nsFontMetricsPango.cpp,v | ||||||
|  | retrieving revision 1.24 | ||||||
|  | diff -d -u -p -6 -r1.24 nsFontMetricsPango.cpp
 | ||||||
|  | --- mozilla/gfx/src/gtk/nsFontMetricsPango.cpp	25 Aug 2006 01:02:34 -0000	1.24
 | ||||||
|  | +++ mozilla/gfx/src/gtk/nsFontMetricsPango.cpp	6 Sep 2006 07:01:49 -0000
 | ||||||
|  | @@ -948,13 +948,12 @@ nsFontMetricsPango::GetClusterInfo(const
 | ||||||
|  |  PRInt32 | ||||||
|  |  nsFontMetricsPango::GetPosition(const PRUnichar *aText, PRUint32 aLength, | ||||||
|  |                                  nsPoint aPt) | ||||||
|  |  { | ||||||
|  |      int trailing = 0; | ||||||
|  |      int inx = 0; | ||||||
|  | -    gboolean found = FALSE;
 | ||||||
|  |      const gchar *curChar; | ||||||
|  |      PRInt32 retval = 0; | ||||||
|  |   | ||||||
|  |      float f = mDeviceContext->AppUnitsToDevUnits(); | ||||||
|  |       | ||||||
|  |      PangoLayout *layout = pango_layout_new(mPangoContext); | ||||||
|  | @@ -974,28 +973,18 @@ nsFontMetricsPango::GetPosition(const PR
 | ||||||
|  |      } | ||||||
|  |   | ||||||
|  |      // Set up the pango layout | ||||||
|  |      pango_layout_set_text(layout, text, strlen(text)); | ||||||
|  |      FixupSpaceWidths(layout, text); | ||||||
|  |       | ||||||
|  | -    found = pango_layout_xy_to_index(layout, localX, localY,
 | ||||||
|  | -                                     &inx, &trailing);
 | ||||||
|  | +    pango_layout_xy_to_index(layout, localX, localY,
 | ||||||
|  | +                             &inx, &trailing);
 | ||||||
|  |   | ||||||
|  |      // Convert the index back to the utf-16 index | ||||||
|  |      curChar = text; | ||||||
|  |   | ||||||
|  | -    // Jump to the end if it's not found.
 | ||||||
|  | -    if (!found) {
 | ||||||
|  | -        if (inx == 0)
 | ||||||
|  | -            retval = 0;
 | ||||||
|  | -        else if (trailing)
 | ||||||
|  | -            retval = aLength;
 | ||||||
|  | -
 | ||||||
|  | -        goto loser;
 | ||||||
|  | -    }
 | ||||||
|  | -
 | ||||||
|  |      for (PRUint32 curOffset=0; curOffset < aLength; | ||||||
|  |           curOffset++, curChar = g_utf8_find_next_char(curChar, NULL)) { | ||||||
|  |   | ||||||
|  |          // Check for a match before checking for a surrogate pair | ||||||
|  |          if (curChar - text == inx) { | ||||||
|  |              retval = curOffset; | ||||||
| @ -8,7 +8,7 @@ | |||||||
| Summary:	Mozilla Thunderbird mail/newsgroup client | Summary:	Mozilla Thunderbird mail/newsgroup client | ||||||
| Name:		thunderbird | Name:		thunderbird | ||||||
| Version:	1.5.0.5 | Version:	1.5.0.5 | ||||||
| Release:	5 | Release:	6 | ||||||
| Epoch:		0 | Epoch:		0 | ||||||
| URL:		http://www.mozilla.org/projects/thunderbird/ | URL:		http://www.mozilla.org/projects/thunderbird/ | ||||||
| License:	MPL | License:	MPL | ||||||
| @ -49,6 +49,7 @@ Patch42:        firefox-1.1-uriloader.patch | |||||||
| # font system fixes | # font system fixes | ||||||
| Patch81:        firefox-1.5-nopangoxft.patch | Patch81:        firefox-1.5-nopangoxft.patch | ||||||
| Patch82:        firefox-1.5-pango-mathml.patch | Patch82:        firefox-1.5-pango-mathml.patch | ||||||
|  | Patch83:        firefox-1.5-pango-cursor-position.patch | ||||||
| 
 | 
 | ||||||
| # patches from upstream (Patch100+) | # patches from upstream (Patch100+) | ||||||
| Patch102:       thunderbird-1.5-pango-start.patch | Patch102:       thunderbird-1.5-pango-start.patch | ||||||
| @ -97,6 +98,8 @@ Mozilla Thunderbird is a standalone mail and newsgroup client. | |||||||
| %patch25 -p0 | %patch25 -p0 | ||||||
| %patch42 -p0 | %patch42 -p0 | ||||||
| %patch81 -p1 | %patch81 -p1 | ||||||
|  | %patch82 -p1 | ||||||
|  | %patch83 -p1 | ||||||
| 
 | 
 | ||||||
| %patch102 -p1 | %patch102 -p1 | ||||||
| 
 | 
 | ||||||
| @ -210,6 +213,9 @@ update-desktop-database %{_datadir}/applications | |||||||
| #=============================================================================== | #=============================================================================== | ||||||
| 
 | 
 | ||||||
| %changelog | %changelog | ||||||
|  | * Wed Sep  6 2006 Christopher Aillon <caillon@redhat.com> - 1.5.0.5-6 | ||||||
|  | - Fix for cursor position in editor widgets by tagoh and behdad (#198759) | ||||||
|  | 
 | ||||||
| * Tue Sep  5 2006 Christopher Aillon <caillon@redhat.com> - 1.5.0.5-5 | * Tue Sep  5 2006 Christopher Aillon <caillon@redhat.com> - 1.5.0.5-5 | ||||||
| - Update nopangoxft.patch | - Update nopangoxft.patch | ||||||
| - Fix rendering of MathML thanks to Behdad Esfahbod. | - Fix rendering of MathML thanks to Behdad Esfahbod. | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user