Revert "Fix undo of entering \hline"

This reverts commit 1fa39e1f95.
This commit is contained in:
Jean-Marc Lasgouttes 2012-04-13 13:03:59 +02:00
parent 88d9fc574e
commit 201dcc8ec3
4 changed files with 6 additions and 19 deletions

View File

@ -1599,11 +1599,8 @@ bool Cursor::macroModeClose()
docstring const name = s.substr(1);
InsetMathNest * const in = inset().asInsetMath()->asNestInset();
if (in && in->interpretString(*this, s)) {
// end undo group that was opened before in was created
endUndoGroup();
if (in && in->interpretString(*this, s))
return true;
}
MathAtom atom = buffer()->getMacro(name, *this, false) ?
MathAtom(new MathMacro(buffer(), name)) : createInsetMath(name, buffer());
@ -1636,9 +1633,7 @@ bool Cursor::macroModeClose()
else
insert(selection);
}
// end undo group that was opened before in was created
endUndoGroup();
return true;
}

View File

@ -184,7 +184,6 @@ bool InsetMathGrid::interpretString(Cursor & cur, docstring const & str)
FuncStatus status;
if (getStatus(cur, fr, status)) {
if (status.enabled()) {
cur.recordUndoInset();
rowinfo_[cur.row()].lines_++;
return true;
}

View File

@ -848,14 +848,10 @@ void InsetMathNest::doDispatch(Cursor & cur, FuncRequest & cmd)
case LFUN_SELF_INSERT:
if (cmd.argument().size() != 1) {
// use a group because interpretString() might
// record an extra undo step
cur.beginUndoGroup();
cur.recordUndoSelection();
docstring const arg = cmd.argument();
if (!interpretString(cur, arg))
cur.insert(arg);
cur.endUndoGroup();
break;
}
// Don't record undo steps if we are in macro mode and thus
@ -1667,8 +1663,6 @@ bool InsetMathNest::interpretChar(Cursor & cur, char_type const c)
cur.cell().erase(cur.pos());
cur.plainInsert(MathAtom(
new InsetMathBig(name.substr(1), delim)));
// end undo group that was opened before p was created
cur.endUndoGroup();
return true;
}
}
@ -1712,12 +1706,9 @@ bool InsetMathNest::interpretChar(Cursor & cur, char_type const c)
bool reduced = cap::reduceSelectionToOneCell(cur);
if (reduced || !cur.selection()) {
docstring const safe = cap::grabAndEraseSelection(cur);
if (!cur.inRegexped()) {
// open a group because interpretString() might
// record an extra undo step when finalizing
cur.beginUndoGroup();
if (!cur.inRegexped())
cur.insert(MathAtom(new InsetMathUnknown(from_ascii("\\"), safe, false)));
} else
else
cur.niceInsert(createInsetMath("backslash", buf));
}
return true;

View File

@ -28,6 +28,8 @@
#include "CoordCache.h"
#include "Cursor.h"
#include "mathed/InsetMathUnknown.h"
#include "support/debug.h"
#include "support/docstream.h"