When an inset is separated from the next strng by a space, it is reasonable to be able to break the string after its leading space.
Fixes bug #9921
//lyxerr << "breakAt(" << w << ") Row element Broken at " << x << "(w(str)=" << fm.width(str) << "): e=" << *this << endl;
return true;
}
//lyxerr << "breakAt(" << w << ") Row element Broken at " << x << "(w(str)=" << fm.width(str) << "): e=" << *this << endl;
return true;
}
+
+ // Qt will not break at a leading space, and we need that sometimes, see
+ // http://www.lyx.org/trac/ticket/9921.
+ // It would be nice to fix this properly, but for now do it by hand.
+ // FIXME: figure out what to do for RtL text.
+ if (!isRTL() && !str.empty() && str[0] == ' ') {
+ dim.wid = 0;
+ str = ' ';
+ endpos = pos + 1;
+ return true;
+ }
+
/* after breakAt, there may be spaces at the end of the
* string, but they are not counted in the string length
* (QTextLayout feature, actually). We remove them, but do
/* after breakAt, there may be spaces at the end of the
* string, but they are not counted in the string length
* (QTextLayout feature, actually). We remove them, but do
- * not change the endo of the row, since the spaces at row
+ * not change the end of the row, since spaces at row
* break are invisible.
*/
brk.str = rtrim(brk.str);
* break are invisible.
*/
brk.str = rtrim(brk.str);