diff --git a/src/plugins/texteditor/codeassist/codeassistant.cpp b/src/plugins/texteditor/codeassist/codeassistant.cpp
index 9c8d342a162d3daaff225ead9feec16f300d6f6c..81d5d2fc3dc47a0eed9fe76537d02befd817961a 100644
--- a/src/plugins/texteditor/codeassist/codeassistant.cpp
+++ b/src/plugins/texteditor/codeassist/codeassistant.cpp
@@ -149,6 +149,7 @@ CodeAssistantPrivate::CodeAssistantPrivate(CodeAssistant *assistant)
     , m_completionProvider(0)
     , m_requestRunner(0)
     , m_requestProvider(0)
+    , m_assistKind(TextEditor::Completion)
     , m_proposalWidget(0)
     , m_receivedContentWhileWaiting(false)
     , m_settings(TextEditorSettings::completionSettings())
@@ -223,16 +224,20 @@ void CodeAssistantPrivate::process()
 
     stopAutomaticProposalTimer();
 
-    if (m_settings.m_completionTrigger != ManualCompletion) {
-        if (CompletionAssistProvider *provider = identifyActivationSequence()) {
-            if (isWaitingForProposal())
-                cancelCurrentRequest();
-            requestProposal(ActivationCharacter, Completion, provider);
-            return;
+    if (m_assistKind == TextEditor::Completion) {
+        if (m_settings.m_completionTrigger != ManualCompletion) {
+            if (CompletionAssistProvider *provider = identifyActivationSequence()) {
+                if (isWaitingForProposal())
+                    cancelCurrentRequest();
+                requestProposal(ActivationCharacter, Completion, provider);
+                return;
+            }
         }
-    }
 
-    startAutomaticProposalTimer();
+        startAutomaticProposalTimer();
+    } else {
+        m_assistKind = TextEditor::Completion;
+    }
 }
 
 void CodeAssistantPrivate::requestProposal(AssistReason reason,