Work around bug #6920. This disables ligatures with involving 'f'

character.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36430 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
Abdelrazak Younes 2010-11-22 08:57:33 +00:00
parent 55f761b6ae
commit 90ac66e7d1

View File

@ -268,6 +268,17 @@ void RowPainter::paintChars(pos_type & vpos, FontInfo const & font,
if (!isPrintableNonspace(c))
break;
// Work-around bug #6920
// The bug can be reproduced with DejaVu font under Linux.
// The issue is that we compute the metrics character by character
// in ParagraphMetrics::singleWidth(); but we paint word by word
// for performance reason.
// Maybe a more general fix would be draw character by character
// for some predefined fonts on some patform. In arabic and
// Hebrew we already do paint this way.
if (prev_char == 'f')
break;
/* Because we do our own bidi, at this point the strings are
* already in visual order. However, Qt also applies its own
* bidi algorithm to strings that it paints to the screen.