diff --git a/src/main/java/com/maddyhome/idea/vim/listener/RiderSpecifics.kt b/src/main/java/com/maddyhome/idea/vim/listener/RiderSpecifics.kt
index 883a8abfb..e860be3d6 100644
--- a/src/main/java/com/maddyhome/idea/vim/listener/RiderSpecifics.kt
+++ b/src/main/java/com/maddyhome/idea/vim/listener/RiderSpecifics.kt
@@ -22,6 +22,7 @@ import com.maddyhome.idea.vim.VimPlugin
 import com.maddyhome.idea.vim.group.visual.IdeaSelectionControl
 import com.maddyhome.idea.vim.group.visual.moveCaretOneCharLeftFromSelectionEnd
 import com.maddyhome.idea.vim.helper.getTopLevelEditor
+import com.maddyhome.idea.vim.helper.isIdeaVimDisabledHere
 
 internal class RiderActionListener : AnActionListener {
 
@@ -45,9 +46,11 @@ internal class RiderActionListener : AnActionListener {
         editor?.caretModel?.addCaretListener(object : CaretListener {
           override fun caretPositionChanged(event: CaretEvent) {
             val eventEditor = event.editor.getTopLevelEditor()
-            val predictedMode =
-              IdeaSelectionControl.predictMode(eventEditor, VimListenerManager.SelectionSource.OTHER)
-            moveCaretOneCharLeftFromSelectionEnd(eventEditor, predictedMode)
+            if (!eventEditor.isIdeaVimDisabledHere) {
+              val predictedMode =
+                IdeaSelectionControl.predictMode(eventEditor, VimListenerManager.SelectionSource.OTHER)
+              moveCaretOneCharLeftFromSelectionEnd(eventEditor, predictedMode)
+            }
             eventEditor.caretModel.removeCaretListener(this)
           }
         })
diff --git a/src/main/java/com/maddyhome/idea/vim/listener/VimListenerManager.kt b/src/main/java/com/maddyhome/idea/vim/listener/VimListenerManager.kt
index c8cee2f56..07fd5a2b6 100644
--- a/src/main/java/com/maddyhome/idea/vim/listener/VimListenerManager.kt
+++ b/src/main/java/com/maddyhome/idea/vim/listener/VimListenerManager.kt
@@ -87,6 +87,7 @@ import com.maddyhome.idea.vim.helper.exitVisualMode
 import com.maddyhome.idea.vim.helper.forceBarCursor
 import com.maddyhome.idea.vim.helper.inVisualMode
 import com.maddyhome.idea.vim.helper.isEndAllowed
+import com.maddyhome.idea.vim.helper.isIdeaVimDisabledHere
 import com.maddyhome.idea.vim.helper.moveToInlayAwareOffset
 import com.maddyhome.idea.vim.helper.resetVimLastColumn
 import com.maddyhome.idea.vim.helper.updateCaretsVisualAttributes
@@ -642,7 +643,9 @@ internal object VimListenerManager {
     private var cutOffFixed = false
 
     override fun mouseDragged(e: EditorMouseEvent) {
-      val caret = e.editor.caretModel.primaryCaret
+      val editor = e.editor
+      if (editor.isIdeaVimDisabledHere) return
+      val caret = editor.caretModel.primaryCaret
 
       clearFirstSelectionEvents(e)
 
@@ -734,6 +737,7 @@ internal object VimListenerManager {
     }
 
     override fun mousePressed(event: EditorMouseEvent) {
+      if (event.editor.isIdeaVimDisabledHere) return
       MouseEventsDataHolder.dragEventCount = MouseEventsDataHolder.allowedSkippedDragEvents
       SelectionVimListenerSuppressor.reset()
     }
@@ -745,6 +749,7 @@ internal object VimListenerManager {
      * - Click-hold and switch editor (ctrl-tab)
      */
     override fun mouseReleased(event: EditorMouseEvent) {
+      if (event.editor.isIdeaVimDisabledHere) return
       SelectionVimListenerSuppressor.unlock()
 
       clearFirstSelectionEvents(event)
@@ -768,6 +773,7 @@ internal object VimListenerManager {
     }
 
     override fun mouseClicked(event: EditorMouseEvent) {
+      if (event.editor.isIdeaVimDisabledHere) return
       logger.debug("Mouse clicked")
 
       if (event.area == EditorMouseEventArea.EDITING_AREA) {
@@ -829,6 +835,7 @@ internal object VimListenerManager {
 
     override fun mousePressed(e: MouseEvent?) {
       val editor = (e?.component as? EditorComponentImpl)?.editor ?: return
+      if (editor.isIdeaVimDisabledHere) return
       val predictedMode = IdeaSelectionControl.predictMode(editor, SelectionSource.MOUSE)
       when (e.clickCount) {
         1 -> {