Fix backspace deletion of selected items with change tracking

Move cursor at beginning of selection after deletion. Else backspace
operation gets stuck in a loop (tries to remove the selection again
and again).

This also fixes backspace deletion of insets with confirmDeletion() == true.

Fixes #11630
This commit is contained in:
Juergen Spitzmueller 2020-01-13 09:48:56 +01:00
parent ff85641cc0
commit adfd38e4ef

View File

@ -1250,7 +1250,13 @@ void Text::dispatch(Cursor & cur, FuncRequest & cmd)
}
}
} else {
DocIterator const dit = cur.selectionBegin();
cutSelection(cur, false);
if (cur.buffer()->params().track_changes)
// since we're doing backwards deletion,
// and the selection is not really cut,
// move cursor before selection (#11630)
cur.setCursor(dit);
singleParUpdate = false;
}
break;