void (@NotNull Runnable listener) { super.addChangeListener(listener); scriptPath.getChildComponent().getDocument().addDocumentListener( new DocumentAdapter() { @Override protected void textChanged(@NotNull DocumentEvent e) { listener.run(); } } ); }