// if (!mathcursor->InMacroMode() && mathcursor->pos() == 0)
if (mathcursor->pos() == 0) {
bv->lockedInsetStoreUndo(Undo::DELETE);
- mathcursor->pullArg();
+ mathcursor->pullArg(false);
bv->updateInset(this, true);
break;
}
case LFUN_DELETE:
bv->lockedInsetStoreUndo(Undo::DELETE);
- mathcursor->Delete();
+ if (mathcursor->pos() == mathcursor->array().size())
+ mathcursor->pullArg(true);
+ else
+ mathcursor->Delete();
bv->updateInset(this, true);
break;