documentation/js/Markdown.Editor.js
function () {
            var currState = inputStateObj || new TextareaState(panels);

            if (!currState) {
                return false;
            }
            if (mode == "moving") {
                if (!lastState) {
                    lastState = currState;
                }
                return;
            }
            if (lastState) {
                if (undoStack[stackPtr - 1].text != lastState.text) {
                    undoStack[stackPtr++] = lastState;
                }
                lastState = null;
            }
            undoStack[stackPtr++] = currState;
            undoStack[stackPtr + 1] = null;
            if (callback) {
                callback();
            }
        }
function () {
            var currState = inputStateObj || new TextareaState(panels);

            if (!currState) {
                return false;
            }
            if (mode == "moving") {
                if (!lastState) {
                    lastState = currState;
                }
                return;
            }
            if (lastState) {
                if (undoStack[stackPtr - 1].text != lastState.text) {
                    undoStack[stackPtr++] = lastState;
                }
                lastState = null;
            }
            undoStack[stackPtr++] = currState;
            undoStack[stackPtr + 1] = null;
            if (callback) {
                callback();
            }
        }
function ( ) { var currState = inputStateObj || new TextareaState ( panels ) ; if ( ! currState ) { return false ; } if ( mode == "moving" ) { if ( ! lastState ) { lastState = currState ; } return ; } if ( lastState ) { if ( undoStack [ stackPtr - 1 ] . text != lastState . text ) { undoStack [ stackPtr ++ ] = lastState ; } lastState = null ; } undoStack [ stackPtr ++ ] = currState ; undoStack [ stackPtr + 1 ] = null ; if ( callback ) { callback ( ) ; } }
Push the input area state to the stack.
Push the input area state to the stack .