@Override public void removeEditorMouseListener(@NotNull final EditorMouseListener listener) { EditorMouseListener wrapper = myEditorMouseListeners.removeWrapper(listener); // HintManager might have an old editor instance if (wrapper != null) { myDelegate.removeEditorMouseListener(wrapper); } }
private void dispose() { assert !myDisposed; myCaretModelDelegate.disposeModel(); for (EditorMouseListener wrapper : myEditorMouseListeners.wrappers()) { myDelegate.removeEditorMouseListener(wrapper); } myEditorMouseListeners.clear(); for (EditorMouseMotionListener wrapper : myEditorMouseMotionListeners.wrappers()) { myDelegate.removeEditorMouseMotionListener(wrapper); } myEditorMouseMotionListeners.clear(); myDisposed = true; Disposer.dispose(myDocumentWindow); }