More font-related fixes.

svn path=/trunk/netsurf/; revision=11516
This commit is contained in:
Sven Weidauer 2011-01-28 13:22:34 +00:00
parent ccac2289cf
commit b2482982dd

View File

@ -149,7 +149,7 @@ static inline NSUInteger cocoa_glyph_for_location( NSLayoutManager *layout, CGFl
NSUInteger glyphIndex = [layout glyphIndexForPoint: NSMakePoint( cocoa_px_to_pt( x ), 0 )
inTextContainer: cocoa_text_container
fractionOfDistanceThroughGlyph: &fraction];
if (fraction > 0) ++glyphIndex;
if (fraction >= 1.0) ++glyphIndex;
return glyphIndex;
}
@ -172,8 +172,10 @@ static NSLayoutManager *cocoa_prepare_layout_manager( const char *bytes, size_t
{
if (NULL == bytes || 0 == length) return nil;
static NSLayoutManager *layout = nil;
NSString *string = [[[NSString alloc] initWithBytes: bytes length:length encoding:NSUTF8StringEncoding] autorelease];
if (string == nil) return nil;
static NSLayoutManager *layout = nil;
if (nil == layout) {
cocoa_text_container = [[NSTextContainer alloc] initWithContainerSize: NSMakeSize( CGFLOAT_MAX, CGFLOAT_MAX )];
[cocoa_text_container setLineFragmentPadding: 0];
@ -182,9 +184,6 @@ static NSLayoutManager *cocoa_prepare_layout_manager( const char *bytes, size_t
[layout addTextContainer: cocoa_text_container];
}
NSString *string = [[[NSString alloc] initWithBytes: bytes length:length encoding:NSUTF8StringEncoding] autorelease];
static NSString *oldString = 0;
static plot_font_style_t oldStyle = { 0 };
@ -210,7 +209,6 @@ static NSLayoutManager *cocoa_prepare_layout_manager( const char *bytes, size_t
[layout ensureLayoutForTextContainer: cocoa_text_container];
return layout;
}