Revert "Fix drawing of collpsable insets"

This patch cuses unintended issues (see #10587).

This reverts commit 18fb9cd7f9.
This commit is contained in:
Jean-Marc Lasgouttes 2017-06-07 16:01:11 +02:00
parent aae04d25b9
commit 48144c474b
4 changed files with 10 additions and 1 deletions

View File

@ -335,10 +335,11 @@ void InsetCollapsable::draw(PainterInfo & pi, int x, int y) const
int w = 0; int w = 0;
int a = 0; int a = 0;
int d = 0; int d = 0;
Color const col = pi.full_repaint ? Color_none : pi.backgroundColor(this);
theFontMetrics(font).rectText(buttonLabel(bv), w, a, d); theFontMetrics(font).rectText(buttonLabel(bv), w, a, d);
int const ww = max(textdim.wid, w); int const ww = max(textdim.wid, w);
pi.pain.rectText(x + (ww - w) / 2, y + desc + a, pi.pain.rectText(x + (ww - w) / 2, y + desc + a,
buttonLabel(bv), font, Color_none, Color_none); buttonLabel(bv), font, col, Color_none);
} }
int const y1 = y - textdim.asc + 3; int const y1 = y - textdim.asc + 3;

View File

@ -54,6 +54,8 @@ public:
void metrics(MetricsInfo &, Dimension &) const; void metrics(MetricsInfo &, Dimension &) const;
/// ///
void draw(PainterInfo & pi, int x, int y) const; void draw(PainterInfo & pi, int x, int y) const;
///
virtual void drawBackground(PainterInfo &, int, int) const {}
/// return x,y of given position relative to the inset's baseline /// return x,y of given position relative to the inset's baseline
void cursorPos(BufferView const & bv, CursorSlice const & sl, void cursorPos(BufferView const & bv, CursorSlice const & sl,

View File

@ -221,6 +221,10 @@ void InsetText::draw(PainterInfo & pi, int x, int y) const
int const xframe = x + TEXT_TO_INSET_OFFSET / 2; int const xframe = x + TEXT_TO_INSET_OFFSET / 2;
bool change_drawn = false; bool change_drawn = false;
if (drawFrame_ || pi.full_repaint) { if (drawFrame_ || pi.full_repaint) {
if (pi.full_repaint)
pi.pain.fillRectangle(xframe, yframe, w, h,
pi.backgroundColor(this));
// Change color of the frame in tracked changes, like for tabulars. // Change color of the frame in tracked changes, like for tabulars.
// Only do so if the color is not custom. But do so even if RowPainter // Only do so if the color is not custom. But do so even if RowPainter
// handles the strike-through already. // handles the strike-through already.

View File

@ -60,6 +60,8 @@ public:
void metrics(MetricsInfo & mi, Dimension & dim) const; void metrics(MetricsInfo & mi, Dimension & dim) const;
/// ///
void draw(PainterInfo & pi, int x, int y) const; void draw(PainterInfo & pi, int x, int y) const;
/// Drawing background is handled in draw
virtual void drawBackground(PainterInfo &, int, int) const {}
/// ///
bool editable() const { return true; } bool editable() const { return true; }
/// ///