diff --git a/java/java-impl/src/com/intellij/refactoring/extractMethod/newImpl/inplace/EditorCodePreview.kt b/java/java-impl/src/com/intellij/refactoring/extractMethod/newImpl/inplace/EditorCodePreview.kt index a01492a3553c..f03331f7e3d4 100644 --- a/java/java-impl/src/com/intellij/refactoring/extractMethod/newImpl/inplace/EditorCodePreview.kt +++ b/java/java-impl/src/com/intellij/refactoring/extractMethod/newImpl/inplace/EditorCodePreview.kt @@ -4,8 +4,8 @@ package com.intellij.refactoring.extractMethod.newImpl.inplace import com.intellij.openapi.Disposable import com.intellij.openapi.editor.Editor import com.intellij.openapi.editor.LogicalPosition +import com.intellij.openapi.editor.event.BulkAwareDocumentListener import com.intellij.openapi.editor.event.DocumentEvent -import com.intellij.openapi.editor.event.DocumentListener import com.intellij.openapi.editor.event.VisibleAreaListener import com.intellij.openapi.editor.ex.util.EditorUtil import com.intellij.openapi.util.Disposer @@ -39,12 +39,10 @@ class EditorCodePreview private constructor(val editor: Editor): Disposable { private var popups: List = emptyList() - private val documentListener = object : DocumentListener { + private val documentListener = object : BulkAwareDocumentListener.Simple { override fun documentChanged(event: DocumentEvent) { - if (!editor.isDisposed && !event.document.isInBulkUpdate) { - popups.forEach(CodeFragmentPopup::updateCodePreview) - updatePopupPositions() - } + popups.forEach(CodeFragmentPopup::updateCodePreview) + updatePopupPositions() } }