diff --git a/src/plugins/fakevim/fakevimactions.cpp b/src/plugins/fakevim/fakevimactions.cpp
index 01c802edf5d687942f479f00c70bbbda9b50b493..989f916ab6d2bc3530215e826fd2bf263da2cdb9 100644
--- a/src/plugins/fakevim/fakevimactions.cpp
+++ b/src/plugins/fakevim/fakevimactions.cpp
@@ -167,10 +167,10 @@ FakeVimSettings *theFakeVimSettings()
     s = new FakeVimSettings;
 
     // Specific FakeVim settings
-    createAction(s, ConfigUseFakeVim, false,     _("UseFakeVim"));
     createAction(s, ConfigReadVimRc,  false,     _("ReadVimRc"));
     createAction(s, ConfigVimRcPath,  QString(), _("VimRcPath"));
 #ifndef FAKEVIM_STANDALONE
+    createAction(s, ConfigUseFakeVim, false,     _("UseFakeVim"));
     s->item(ConfigUseFakeVim)->setText(QCoreApplication::translate("FakeVim::Internal",
         "Use Vim-style Editing"));
     s->item(ConfigReadVimRc)->setText(QCoreApplication::translate("FakeVim::Internal",
diff --git a/src/plugins/fakevim/fakevimhandler.cpp b/src/plugins/fakevim/fakevimhandler.cpp
index 9db1fd492e7d3e25d85c37f4a553567a9a89693c..a43da4a94d27fc91758f346da8594880e828d502 100644
--- a/src/plugins/fakevim/fakevimhandler.cpp
+++ b/src/plugins/fakevim/fakevimhandler.cpp
@@ -7600,7 +7600,10 @@ void FakeVimHandler::disconnectFromEditor()
 
 bool FakeVimHandler::eventFilter(QObject *ob, QEvent *ev)
 {
-    bool active = theFakeVimSetting(ConfigUseFakeVim)->value().toBool();
+#ifndef FAKEVIM_STANDALONE
+    if (!theFakeVimSetting(ConfigUseFakeVim)->value().toBool())
+        return QObject::eventFilter(ob, ev);
+#endif
 
     // Catch mouse events on the viewport.
     QWidget *viewport = 0;
@@ -7609,14 +7612,14 @@ bool FakeVimHandler::eventFilter(QObject *ob, QEvent *ev)
     else if (d->m_textedit)
         viewport = d->m_textedit->viewport();
     if (ob == viewport) {
-        if (active && ev->type() == QEvent::MouseButtonRelease) {
+        if (ev->type() == QEvent::MouseButtonRelease) {
             QMouseEvent *mev = static_cast<QMouseEvent *>(ev);
             if (mev->button() == Qt::LeftButton) {
                 d->importSelection();
                 //return true;
             }
         }
-        if (active && ev->type() == QEvent::MouseButtonPress) {
+        if (ev->type() == QEvent::MouseButtonPress) {
             QMouseEvent *mev = static_cast<QMouseEvent *>(ev);
             if (mev->button() == Qt::LeftButton)
                 d->m_visualMode = NoVisualMode;
@@ -7624,12 +7627,12 @@ bool FakeVimHandler::eventFilter(QObject *ob, QEvent *ev)
         return QObject::eventFilter(ob, ev);
     }
 
-    if (active && ev->type() == QEvent::Shortcut) {
+    if (ev->type() == QEvent::Shortcut) {
         d->passShortcuts(false);
         return false;
     }
 
-    if (active && ev->type() == QEvent::InputMethod && ob == d->editor()) {
+    if (ev->type() == QEvent::InputMethod && ob == d->editor()) {
         // This handles simple dead keys. The sequence of events is
         // KeyRelease-InputMethod-KeyRelease  for dead keys instead of
         // KeyPress-KeyRelease as for simple keys. As vi acts on key presses,
@@ -7644,7 +7647,7 @@ bool FakeVimHandler::eventFilter(QObject *ob, QEvent *ev)
         return res == EventHandled || res == EventCancelled;
     }
 
-    if (active && ev->type() == QEvent::KeyPress &&
+    if (ev->type() == QEvent::KeyPress &&
         (ob == d->editor() || (d->m_mode == ExMode || d->m_subsubmode == SearchSubSubMode))) {
         QKeyEvent *kev = static_cast<QKeyEvent *>(ev);
         KEY_DEBUG("KEYPRESS" << kev->key() << kev->text() << QChar(kev->key()));
@@ -7658,7 +7661,7 @@ bool FakeVimHandler::eventFilter(QObject *ob, QEvent *ev)
         return res == EventHandled || res == EventCancelled;
     }
 
-    if (active && ev->type() == QEvent::ShortcutOverride && ob == d->editor()) {
+    if (ev->type() == QEvent::ShortcutOverride && ob == d->editor()) {
         QKeyEvent *kev = static_cast<QKeyEvent *>(ev);
         if (d->wantsOverride(kev)) {
             KEY_DEBUG("OVERRIDING SHORTCUT" << kev->key());
@@ -7669,7 +7672,7 @@ bool FakeVimHandler::eventFilter(QObject *ob, QEvent *ev)
         return true;
     }
 
-    if (active && ev->type() == QEvent::FocusIn && ob == d->editor())
+    if (ev->type() == QEvent::FocusIn && ob == d->editor())
         d->focus();
 
     return QObject::eventFilter(ob, ev);