cur.recordUndoSelection();
// if the inset can not be removed from within, delete it
if (!cur.backspace(cmd.getArg(0) == "force")) {
- FuncRequest cmd = FuncRequest(LFUN_CHAR_DELETE_FORWARD, "force");
- cur.innerText()->dispatch(cur, cmd);
+ FuncRequest newcmd = FuncRequest(LFUN_CHAR_DELETE_FORWARD, "force");
+ cur.innerText()->dispatch(cur, newcmd);
}
break;
cur.recordUndoSelection();
// if the inset can not be removed from within, delete it
if (!cur.erase(cmd.getArg(0) == "force")) {
- FuncRequest cmd = FuncRequest(LFUN_CHAR_DELETE_FORWARD, "force");
- cur.innerText()->dispatch(cur, cmd);
+ FuncRequest newcmd = FuncRequest(LFUN_CHAR_DELETE_FORWARD, "force");
+ cur.innerText()->dispatch(cur, newcmd);
}
break;
if (cur.selection())
cur.clearSelection();
else {
- cmd = FuncRequest(LFUN_FINISHED_FORWARD);
- cur.undispatched();
+ if (cur.inMacroMode())
+ cur.macroModeClose(true);
+ else {
+ cmd = FuncRequest(LFUN_FINISHED_FORWARD);
+ cur.undispatched();
+ }
}
break;
int y = 0;
istringstream is(to_utf8(cmd.argument()));
is >> x >> y;
- cur.setScreenPos(x, y);
+ cur.setTargetX(x);
break;
}