break;
case InsetMath::BOX_MARKER:
FontInfo font;
- font.setSize(FONT_SIZE_TINY);
+ font.setSize(TINY_SIZE);
Dimension namedim;
mathed_string_dim(font, e.inset->name(), namedim);
int const namewid = 1 + namedim.wid + 1;
if (e.marker == InsetMath::BOX_MARKER) {
// draw header and rectangle around
FontInfo font;
- font.setSize(FONT_SIZE_TINY);
+ font.setSize(TINY_SIZE);
font.setColor(Color_mathmacrolabel);
Dimension namedim;
mathed_string_dim(font, e.inset->name(), namedim);
|| e.inset->editing(pi.base.bv);
ColorCode const pen_color = highlight ? Color_mathframe : Color_mathcorners;
// If the corners have the same color as the background, do not paint them.
- if (lcolor.getX11Name(Color_mathbg) == lcolor.getX11Name(pen_color))
+ if (lcolor.getX11HexName(Color_mathbg) == lcolor.getX11HexName(pen_color))
return;
// Lower corners in all cases
}
-bool MathRow::metrics(MetricsInfo & mi, Dimension & dim)
+void MathRow::metrics(MetricsInfo & mi, Dimension & dim)
{
- bool has_caret = false;
-
dim.wid = 0;
// In order to compute the dimension of macros and their
// arguments, it is necessary to keep track of them.
d.wid = e.before + e.after;
e.inset->beforeMetrics();
}
- if (e.ar) {
+ if (e.ar)
dim_arrays.push_back(make_pair(e.ar, Dimension()));
- has_caret |= e.ar->hasCaret(mi.base.bv);
- }
break;
case END:
if (e.inset) {
dim.wid += mathed_string_width(font, e.compl_text);
}
LATTEST(dim_insets.empty() && dim_arrays.empty());
- return has_caret;
}
Dimension d2 = d;
d2.wid -= e.before + e.after;
coords.insets().add(e.inset, d2);
+ if (pi.pain.develMode() && !e.inset->isBufferValid())
+ pi.pain.fillRectangle(x + e.before, y - d2.ascent(),
+ d2.width(), d2.height(), Color_error);
e.inset->draw(pi, x + e.before, y);
coords.insets().add(e.inset, x, y);
coords.insets().add(e.inset, d);
if (!s1.empty()) {
f.setColor(Color_inlinecompletion);
- pi.pain.text(x, y, s1, f);
+ // offset the text by e.after to make sure that the
+ // spacing is after the completion, not before.
+ pi.pain.text(x - e.after, y, s1, f);
x += mathed_string_width(f, s1);
}
if (!s2.empty()) {
f.setColor(Color_nonunique_inlinecompletion);
- pi.pain.text(x, y, s2, f);
+ pi.pain.text(x - e.after, y, s2, f);
x += mathed_string_width(f, s2);
}
}