void (final DocumentEvent event) { //noinspection deprecation List<javax.swing.event.DocumentListener> listeners = ((EditorAccessibilityDocument)getDocument()).getListeners(); if (listeners == null) { return; } javax.swing.event.DocumentEvent swingEvent = new javax.swing.event.DocumentEvent() { @Override public int getOffset() { return event.getOffset(); } @Override public int getLength() { return event.getNewLength(); } @Override public javax.swing.text.Document getDocument() { //noinspection deprecation return EditorComponentImpl.this.getDocument(); } @Override public EventType getType() { return event.getOldLength() == 0 ? EventType.INSERT : event.getNewLength() == 0 ? EventType.REMOVE : EventType.CHANGE; } @Override public @Nullable ElementChange getChange(Element element) { return null; } }; for (javax.swing.event.DocumentListener listener : listeners) { javax.swing.event.DocumentEvent.EventType type = swingEvent.getType(); if (type == javax.swing.event.DocumentEvent.EventType.INSERT) { listener.insertUpdate(swingEvent); } else if (type == javax.swing.event.DocumentEvent.EventType.REMOVE) { listener.removeUpdate(swingEvent); } else if (type == javax.swing.event.DocumentEvent.EventType.CHANGE) { listener.changedUpdate(swingEvent); } } }