X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Frowpainter.C;h=2cb5b6311abefe4f6583f6b4b3edc2924fd5e762;hb=52eb91c94fb70d58dceef430659c8781de2eccda;hp=b7e7761f302aa7a19ba76f93e87c43392fa4a6f2;hpb=063fdd118b87462c4670246484df389f1e2ffeb7;p=lyx.git diff --git a/src/rowpainter.C b/src/rowpainter.C index b7e7761f30..2cb5b6311a 100644 --- a/src/rowpainter.C +++ b/src/rowpainter.C @@ -977,7 +977,10 @@ void paintText(BufferView & bv, PainterInfo pi(const_cast(&bv), pain); // Should the whole screen, including insets, be refreshed? - bool repaintAll = select || !vi.singlepar; + // FIXME: We should also distinguish DecorationUpdate to avoid text + // drawing if possible. This is not possible to do easily right now + // because of the single backing pixmap. + bool repaintAll = select || vi.update_strategy != SingleParUpdate; if (repaintAll) { // Clear background (if not delegated to rows) @@ -1000,12 +1003,12 @@ void paintText(BufferView & bv, // and grey out above (should not happen later) // lyxerr << "par ascent: " << text.getPar(vi.p1).ascent() << endl; - if (vi.y1 > 0 && !vi.singlepar) + if (vi.y1 > 0 && vi.update_strategy != SingleParUpdate) pain.fillRectangle(0, 0, bv.workWidth(), vi.y1, LColor::bottomarea); // and possibly grey out below // lyxerr << "par descent: " << text.getPar(vi.p1).ascent() << endl; - if (vi.y2 < bv.workHeight() && !vi.singlepar) + if (vi.y2 < bv.workHeight() && vi.update_strategy != SingleParUpdate) pain.fillRectangle(0, vi.y2, bv.workWidth(), bv.workHeight() - vi.y2, LColor::bottomarea); }