Добавить слушателя фокуса / размытия в плагин IntelliJ - PullRequest
0 голосов
/ 30 октября 2019

Как прослушать события фокуса / размытия всех редакторов в плагине IntelliJ?

1 Ответ

1 голос
/ 30 октября 2019

Получите EditorEventMulticasterEx с использованием метода getEventMulticaster, а затем используйте его метод addFocusChangeListener:

Disposable disposable = () -> {};  // or your custom disposable

EditorEventMulticasterEx editorEventMulticaster =
        (EditorEventMulticasterEx) EditorFactory.getInstance().getEventMulticaster();

editorEventMulticaster.addFocusChangeListener(new FocusChangeListener() {
    @Override
    public void focusGained(@NotNull Editor editor) {
        // handle focus event
    }

    @Override
    public void focusLost(@NotNull Editor editor) {
        // handle blur event
    }
}, disposable);
...