diff --git a/src/plugins/texteditor/basetexteditor.cpp b/src/plugins/texteditor/basetexteditor.cpp
index 0d416188326c448f1d90c9e77bf8ee1368a0833f..900db9b9a4e12a58f0b7047dcc4ede6e6ba612d8 100644
--- a/src/plugins/texteditor/basetexteditor.cpp
+++ b/src/plugins/texteditor/basetexteditor.cpp
@@ -5407,6 +5407,10 @@ void BaseTextEditor::insertFromMimeData(const QMimeData *source)
         QString text = QString::fromUtf8(source->data(QLatin1String("application/vnd.nokia.qtcreator.vblocktext")));
         if (text.isEmpty())
             return;
+
+        if (CompletionSupport::instance()->isActive())
+            setFocus();
+
         QStringList lines = text.split(QLatin1Char('\n'));
         QTextCursor cursor = textCursor();
         cursor.beginEditBlock();
@@ -5444,6 +5448,9 @@ void BaseTextEditor::insertFromMimeData(const QMimeData *source)
     if (text.isEmpty())
         return;
 
+    if (CompletionSupport::instance()->isActive())
+        setFocus();
+
     if (!text.contains(QLatin1Char('\n')) && !text.contains(QLatin1Char('\t')))
         setNextChangeIsSnippetSafe();