From ce7302098cbd8a553b233843f0114632598974ba Mon Sep 17 00:00:00 2001 From: Enrico Forestieri Date: Thu, 9 Jul 2009 18:00:27 +0000 Subject: [PATCH] Allow undoing changes to the name of macros that are already finalized. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30434 a592a061-630c-0410-9148-cb99ea01b6c8 --- src/mathed/InsetMathNest.cpp | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/src/mathed/InsetMathNest.cpp b/src/mathed/InsetMathNest.cpp index c44a843e82..e6c8f2eafc 100644 --- a/src/mathed/InsetMathNest.cpp +++ b/src/mathed/InsetMathNest.cpp @@ -808,7 +808,7 @@ void InsetMathNest::doDispatch(Cursor & cur, FuncRequest & cmd) cur.insert(arg); break; } - // Don't record undo steps if we are in macro mode and + // Don't record undo steps if we are in macro mode and thus // cmd.argument is the next character of the macro name. // Otherwise we'll get an invalid cursor if we undo after // the macro was finished and the macro is a known command, @@ -817,14 +817,9 @@ void InsetMathNest::doDispatch(Cursor & cur, FuncRequest & cmd) // InsetMathFrac -> a pos value > 0 is invalid. // A side effect is that an undo before the macro is finished // undoes the complete macro, not only the last character. - if (!cur.inMacroMode()) { - MathMacro const * macro = 0; - if (cur.pos() > 0 && cmd.argument() != "\\") - macro = cur.inset().asInsetMath()->asMacro(); - - if (!macro) - cur.recordUndoSelection(); - } + // At the time we hit '\' we are not in macro mode, still. + if (!cur.inMacroMode()) + cur.recordUndoSelection(); // spacial handling of space. If we insert an inset // via macro mode, we want to put the cursor inside it -- 2.39.2