When a row is shortened, reset its flushed() attribute.

Fixes bug #10699.

(cherry picked from commit 59e2c40564)
This commit is contained in:
Jean-Marc Lasgouttes 2017-08-31 14:52:30 +02:00
parent 48904cc5a1
commit 8ff22de938
2 changed files with 4 additions and 1 deletions

View File

@ -947,7 +947,8 @@ void TextMetrics::breakRow(Row & row, int const right_margin, pit_type const pit
int const next_width = max_width_ - leftMargin(max_width_, pit, row.endpos())
- rightMargin(pit);
row.shortenIfNeeded(body_pos, width, next_width);
if (row.shortenIfNeeded(body_pos, width, next_width))
row.flushed(false);
row.right_boundary(!row.empty() && row.endpos() < end
&& row.back().endpos == row.endpos());
// Last row in paragraph is flushed

View File

@ -103,6 +103,8 @@ What's new
- Fix some rare cases of bad on-screen line breaking (bug #10700).
- Fix bad justification before a displayed inset (bug 10699).
- Fix cursor state after double/triple click in mathed (bug #10686).
- Avoid a case of stuck cursor after entering an inset (bug 10630).