textComponent.addMouseListener(this);
textComponent.addFocusListener(this);
textComponent.addCaretListener(this);
textComponent.getDocument().addUndoableEditListener(this);
if (resetUndoHistoryTrigger != null) {
CommitTriggerListener resetUndoHistoryHandler = new CommitTriggerListener() {
public void commit() {
undoManager.discardAllEdits();
updateUndoRedoState();
}