diff --git a/src/Text3.cpp b/src/Text3.cpp index 9bd95cc05a..3a93ed23d5 100644 --- a/src/Text3.cpp +++ b/src/Text3.cpp @@ -1071,11 +1071,17 @@ void Text::dispatch(Cursor & cur, FuncRequest & cmd) case LFUN_CHAR_DELETE_BACKWARD: if (!cur.selection()) { if (bv->getIntl().getTransManager().backspace()) { + bool par_boundary = cur.pos() == 0; // Par boundary, full-screen update - if (cur.pos() == 0) + if (par_boundary) singleParUpdate = false; needsUpdate |= backspace(cur); cur.resetAnchor(); + if (par_boundary && cur.pos() > 0 + && cur.paragraph().isEnvSeparator(cur.pos() - 1)) { + needsUpdate |= backspace(cur); + cur.resetAnchor(); + } } } else { cutSelection(cur, true, false);