]> git.lyx.org Git - features.git/commitdiff
Allow undoing changes to the name of macros that are already finalized.
authorEnrico Forestieri <forenr@lyx.org>
Thu, 9 Jul 2009 18:00:27 +0000 (18:00 +0000)
committerEnrico Forestieri <forenr@lyx.org>
Thu, 9 Jul 2009 18:00:27 +0000 (18:00 +0000)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30434 a592a061-630c-0410-9148-cb99ea01b6c8

src/mathed/InsetMathNest.cpp

index c44a843e8263533b67ef74f851a90884559c330b..e6c8f2eafc7a03d8496c7c48be3c188e0a10b406 100644 (file)
@@ -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