diff --git a/src/plugins/fakevim/fakevimhandler.cpp b/src/plugins/fakevim/fakevimhandler.cpp
index efcb6d1ab54e901cf1bbf7c951ed88b6bcde2935..1ba8e7af0a9e5c9fe0de0b2a716ef41d6d0a5b1e 100755
--- a/src/plugins/fakevim/fakevimhandler.cpp
+++ b/src/plugins/fakevim/fakevimhandler.cpp
@@ -3001,6 +3001,7 @@ void FakeVimHandler::Private::enterInsertMode()
 {
     EDITOR(setCursorWidth(m_cursorWidth));
     EDITOR(setOverwriteMode(false));
+    leaveVisualMode();
     m_mode = InsertMode;
     m_lastInsertion.clear();
     m_beginEditBlock = true;