]> git.lyx.org Git - lyx.git/blobdiff - src/undo.C
add config.h
[lyx.git] / src / undo.C
index fa377c3e548588d92f62c57a654f37097282eee6..33b97827325f006009e10dbcc3ef59165aa0c583 100644 (file)
@@ -17,6 +17,7 @@
 #include "undo.h"
 
 #include "buffer.h"
+#include "buffer_funcs.h"
 #include "cursor.h"
 #include "debug.h"
 #include "BufferView.h"
@@ -96,7 +97,7 @@ void doRecordUndo(Undo::undo_kind kind,
        // fill in the real data to be saved
        if (cell.inMathed()) {
                // simply use the whole cell
-               undo.array = to_utf8(asString(cell.cell()));
+               undo.array = asString(cell.cell());
        } else {
                // some more effort needed here as 'the whole cell' of the
                // main LyXText _is_ the whole document.
@@ -169,9 +170,8 @@ bool textUndoOrRedo(BufferView & bv,
                // We stored the full cell here as there is not much to be
                // gained by storing just 'a few' paragraphs (most if not
                // all math inset cells have just one paragraph!)
-               //lyxerr << "undo.array=" << undo.array <<endl;
-               // FIXME UNICODE
-               asArray(from_utf8(undo.array), dit.cell());
+               // lyxerr << "undo.array=" << to_ascii(undo.array) <<endl;
+               asArray(undo.array, dit.cell());
        } else {
                // Some finer machinery is needed here.
                LyXText * text = dit.text();
@@ -196,6 +196,7 @@ bool textUndoOrRedo(BufferView & bv,
                for (; pit != end; ++pit)
                        pit->setInsetOwner(dit.realInset());
                plist.insert(first, undo.pars.begin(), undo.pars.end());
+               updateLabels(*buf);
        }
 
        // Set cursor