Disable direct insertion of multiple spaces in mathed text

Fixes #1311
This commit is contained in:
Enrico Forestieri 2021-02-04 21:20:45 +01:00
parent daa6f143de
commit 8202e4e571

View File

@ -1819,7 +1819,13 @@ bool InsetMathNest::interpretChar(Cursor & cur, char_type const c)
// but suppress direct insertion of two spaces in a row
// the still allows typing '<space>a<space>' and deleting the 'a', but
// it is better than nothing...
if (cur.pos() == 0 || cur.prevAtom()->getChar() != ' ') {
pos_type const pos = cur.pos();
pos_type const lastpos = cur.lastpos();
if ((pos == 0 && lastpos == 0)
|| (pos == 0 && cur.nextAtom()->getChar() != ' ')
|| (pos == lastpos && cur.prevAtom()->getChar() != ' ')
|| (pos > 0 && cur.prevAtom()->getChar() != ' '
&& cur.nextAtom()->getChar() != ' ')) {
cur.insert(c);
// FIXME: we have to enable full redraw here because of the
// visual box corners that define the inset. If we know for