diff --git a/src/plugins/fakevim/fakevimhandler.cpp b/src/plugins/fakevim/fakevimhandler.cpp
index 6c4a0220300fe8f90789b959031945940a14875d..ae4d3fd6b84f2e3ecec03db912456b749052b687 100755
--- a/src/plugins/fakevim/fakevimhandler.cpp
+++ b/src/plugins/fakevim/fakevimhandler.cpp
@@ -3210,6 +3210,11 @@ void FakeVimHandler::Private::enterVisualMode(VisualMode visualMode)
 
 void FakeVimHandler::Private::leaveVisualMode()
 {
+    if (isVisualLineMode())
+        m_movetype = MoveLineWise;
+    else if (isVisualCharMode())
+        m_movetype = MoveInclusive;
+
     m_visualMode = NoVisualMode;
     updateMiniBuffer();
     updateSelection();