From 8f169aa23de65c809374f324f035c4974630cd42 Mon Sep 17 00:00:00 2001 From: Enrico Forestieri Date: Mon, 8 Jun 2015 00:41:36 +0200 Subject: [PATCH] Properly fix #9602. Other than checking that we are at the beginning of a paragraph, we must also check that this is not the first paragraph before triggering the code that removes the inset separator. This accounts for the case that we are dissolving an inset from the inside. Without this additonal check the old code was fooled into thinking that the separator should have been removed. --- src/Text3.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Text3.cpp b/src/Text3.cpp index 3a93ed23d5..252279a83d 100644 --- a/src/Text3.cpp +++ b/src/Text3.cpp @@ -1072,12 +1072,13 @@ void Text::dispatch(Cursor & cur, FuncRequest & cmd) 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(); -- 2.39.2