// This is the same as what is done in metrics().
d->editing_[mi.base.bv] = editMode(mi.base.bv);
+ // For now we do not linearize in the following cases (can be improved)
+ // - display mode different from normal
+ // - editing with parameter list
+ // - editing with box around macro
if (displayMode() != MathMacro::DISPLAY_NORMAL
- || d->editing_[mi.base.bv])
+ || (d->editing_[mi.base.bv] && lyxrc.macro_edit_style != LyXRC::MACRO_EDIT_INLINE))
return InsetMath::addToMathRow(mrow, mi);
/// The macro nesting can change display of insets. Change it locally.
}
case BEG_MACRO:
coords.insets().add(e.macro, x, y);
-
drawMarkers(pi, e, x, y);
+ if (e.macro->editMetrics(pi.base.bv))
+ pi.pain.enterMonochromeMode(Color_mathbg, Color_mathmacroblend);
+ break;
+ case END_MACRO:
+ if (e.macro->editMetrics(pi.base.bv))
+ pi.pain.leaveMonochromeMode();
break;
case BEG_ARG:
coords.arrays().add(e.ar, x, y);
break;
}
case DUMMY:
- case END_MACRO:
break;
}