FakeVim: Allow to use "i<C-O>v"

Change-Id: Ibd669a8ac75734b18b41066255a43ee8bda19743
Reviewed-by: hjk <hjk121@nokiamail.com>
This commit is contained in:
Lukas Holecek
2014-11-12 21:06:36 +01:00
committed by hjk
parent f4ffaaa278
commit 4631da97af
2 changed files with 5 additions and 1 deletions

View File

@@ -748,6 +748,8 @@ void FakeVimPlugin::test_vim_insert()
KEYS("i<c-o>0x", "abc" N "x" X "def");
data.setText("abc" N "de" X "f");
KEYS("i<c-o>ggx", "x" X "abc" N "def");
data.setText("abc" N "def" N "ghi");
KEYS("i<c-o>vjlolx", "a" X "f" N "ghi");
// <INSERT> to toggle between insert and replace mode
data.setText("abc" N "def");

View File

@@ -3492,7 +3492,9 @@ void FakeVimHandler::Private::finishMovement(const QString &dotCommandMovement)
void FakeVimHandler::Private::leaveCurrentMode()
{
if (g.returnToMode == CommandMode)
if (isVisualMode())
enterCommandMode(g.returnToMode);
else if (g.returnToMode == CommandMode)
enterCommandMode();
else if (g.returnToMode == InsertMode)
enterInsertMode();