RTEditor/src/main/java/com/onegravity/rteditor/RTOperationManager.java
synchronized void redo(RTEditText editor) {
        Stack<Operation> redoStack = getRedoStack(editor);
        if (!redoStack.empty()) {
            Stack<Operation> undoStack = getUndoStack(editor);
            Operation op = redoStack.pop();
            push(op, undoStack);
            op.redo(editor);
            while (!redoStack.empty() && op.canMerge(redoStack.peek())) {
                op = redoStack.pop();
                push(op, undoStack);
                op.redo(editor);
            }
        }
    }
synchronized void redo(RTEditText editor) {
        Stack<Operation> redoStack = getRedoStack(editor);
        if (!redoStack.empty()) {
            Stack<Operation> undoStack = getUndoStack(editor);
            Operation op = redoStack.pop();
            push(op, undoStack);
            op.redo(editor);
            while (!redoStack.empty() && op.canMerge(redoStack.peek())) {
                op = redoStack.pop();
                push(op, undoStack);
                op.redo(editor);
            }
        }
    }
Re-do the last undone operation for a specific rich text editor

@param editor Re-do an operation for this rich text editor