aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/find/findtoolbar.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/find/findtoolbar.cpp')
-rw-r--r--src/plugins/find/findtoolbar.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/plugins/find/findtoolbar.cpp b/src/plugins/find/findtoolbar.cpp
index 6d35df5d480..47a72db22f0 100644
--- a/src/plugins/find/findtoolbar.cpp
+++ b/src/plugins/find/findtoolbar.cpp
@@ -115,8 +115,11 @@ FindToolBar::FindToolBar(FindPlugin *plugin, CurrentDocumentFind *currentDocumen
m_ui.replaceEdit->setPlaceholderText(QString());
connect(m_ui.findEdit, SIGNAL(textChanged(QString)), this, SLOT(invokeFindIncremental()));
- connect(m_ui.findEdit, SIGNAL(returnPressed()), this, SLOT(invokeFindEnter()));
- connect(m_ui.replaceEdit, SIGNAL(returnPressed()), this, SLOT(invokeReplaceEnter()));
+
+ // invoke{Find,Replace}Helper change the completion model. QueuedConnection is used to perform these
+ // changes only after the completer's activated() signal is handled (QTCREATORBUG-8408)
+ connect(m_ui.findEdit, SIGNAL(returnPressed()), this, SLOT(invokeFindEnter()), Qt::QueuedConnection);
+ connect(m_ui.replaceEdit, SIGNAL(returnPressed()), this, SLOT(invokeReplaceEnter()), Qt::QueuedConnection);
QAction *shiftEnterAction = new QAction(m_ui.findEdit);
shiftEnterAction->setShortcut(QKeySequence(tr("Shift+Enter")));