commit bab58480bc32323c6124c02bdf086b5de1843df0 Author: Jean-Marc Lasgouttes <lasgout...@lyx.org> Date: Tue Jan 28 11:04:31 2014 +0100
Do not skip space at start of row (fixes #8947, #8838) TextMetrics::getColumnNearX (x -> pos translation) has special code to ignore spaces at the beginning of a row, but neither the display code nor TextMetrics::cursorX (pos->x translation) follow this logic. One might argue that spaces should actually be ignored (like LaTeX does), but this leads to UI issues and is probably too difficult to implement. diff --git a/src/TextMetrics.cpp b/src/TextMetrics.cpp index 618c893..036a1cf 100644 --- a/src/TextMetrics.cpp +++ b/src/TextMetrics.cpp @@ -1240,13 +1240,6 @@ pos_type TextMetrics::getColumnNearX(pit_type const pit, // the value of rtl. bool const rtl_on_lastrow = lastrow ? text_->isRTL(par) : false; - // if the first character is a separator, and we are in RTL - // text, this character will not be painted on screen - // and thus we should not count it and skip to the next. Only - // in freespacing paragraphs, this first character is painted. - if (!par.isFreeSpacing() && par.isSeparator(bidi.vis2log(vc))) - ++vc; - while (vc < end && tmpx <= x) { c = bidi.vis2log(vc); last_tmpx = tmpx;