diff --git a/src/plugins/coreplugin/locator/locatorwidget.cpp b/src/plugins/coreplugin/locator/locatorwidget.cpp index efddf72a736..7276685d20f 100644 --- a/src/plugins/coreplugin/locator/locatorwidget.cpp +++ b/src/plugins/coreplugin/locator/locatorwidget.cpp @@ -886,10 +886,12 @@ void LocatorWidget::acceptEntry(int row) QString newText; int selectionStart = -1; int selectionLength = 0; + QWidget *focusBeforeAccept = QApplication::focusWidget(); entry.filter->accept(entry, &newText, &selectionStart, &selectionLength); if (newText.isEmpty()) { emit hidePopup(); - resetFocus(m_previousFocusWidget, isInMainWindow()); + if (QApplication::focusWidget() == focusBeforeAccept) + resetFocus(m_previousFocusWidget, isInMainWindow()); } else { showText(newText, selectionStart, selectionLength); }