if (!cur.selection()) {
if (bv->getIntl().getTransManager().backspace()) {
bool par_boundary = cur.pos() == 0;
+ bool first_par = cur.pit() == 0;
// Par boundary, full-screen update
if (par_boundary)
singleParUpdate = false;
needsUpdate |= backspace(cur);
cur.resetAnchor();
- if (par_boundary && cur.pos() > 0
+ if (par_boundary && !first_par && cur.pos() > 0
&& cur.paragraph().isEnvSeparator(cur.pos() - 1)) {
needsUpdate |= backspace(cur);
cur.resetAnchor();
}
case LFUN_WORD_UPCASE:
- changeCase(cur, text_uppercase);
+ changeCase(cur, text_uppercase, cmd.getArg(0) == "partial");
break;
case LFUN_WORD_LOWCASE:
- changeCase(cur, text_lowercase);
+ changeCase(cur, text_lowercase, cmd.getArg(0) == "partial");
break;
case LFUN_WORD_CAPITALIZE:
- changeCase(cur, text_capitalization);
+ changeCase(cur, text_capitalization, cmd.getArg(0) == "partial");
break;
case LFUN_CHARS_TRANSPOSE:
bv->buffer().errors("Paste");
cur.clearSelection(); // bug 393
cur.finishUndo();
- bv->buffer().updatePreviews();
break;
}