}
if (Encodings::is_arabic(next_char)) {
- if (Encodings::is_arabic(prev_char))
+ if (Encodings::is_arabic(prev_char) &&
+ !Encodings::is_arabic_special(prev_char))
return Encodings::TransformChar(c, Encodings::FORM_MEDIAL);
else
return Encodings::TransformChar(c, Encodings::FORM_INITIAL);
} else {
- if (Encodings::is_arabic(prev_char))
+ if (Encodings::is_arabic(prev_char) &&
+ !Encodings::is_arabic_special(prev_char))
return Encodings::TransformChar(c, Encodings::FORM_FINAL);
else
return Encodings::TransformChar(c, Encodings::FORM_ISOLATED);
LyXLength const len = row->par()->params().leftIndent();
int const tw = inset_owner ?
inset_owner->latexTextWidth(bview) : workWidth(bview);
- x += len.inPixels(tw, bview->text->defaultHeight());
+ x += len.inPixels(tw);
}
LyXAlignment align; // wrong type
// we would not get a rebreak!
row->fill(fill(bview, row, workWidth(bview)));
}
-
+
if (c == Paragraph::META_INSET || row->fill() < 0) {
refresh_y = y;
refresh_row = row;
if (the_locking_inset) {
WordLangTuple word = the_locking_inset->selectNextWordToSpellcheck(bview, value);
if (!word.word().empty()) {
- value += float(cursor.y())/float(height);
+ value += float(cursor.y());
+ value /= float(height);
return word;
}
// we have to go on checking so move cursor to the next char
switch (vsp.kind()) {
case VSpace::LENGTH:
{
- str = prefix + " (" + vsp.asLyXCommand() + ")";
+ str = prefix + " (" + vsp.asLyXCommand() + ')';
// adding or removing space
bool const added = !(vsp.length().len().value() < 0.0);
ty1 = added ? (start + arrow_size) : start;