summaryrefslogtreecommitdiffstats
path: root/src/widgets/util/qcompleter.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/widgets/util/qcompleter.cpp')
-rw-r--r--src/widgets/util/qcompleter.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/widgets/util/qcompleter.cpp b/src/widgets/util/qcompleter.cpp
index 8b5aa3f2e4..25e08c3921 100644
--- a/src/widgets/util/qcompleter.cpp
+++ b/src/widgets/util/qcompleter.cpp
@@ -1031,11 +1031,15 @@ QCompleter::~QCompleter()
void QCompleter::setWidget(QWidget *widget)
{
Q_D(QCompleter);
+ if (widget == d->widget)
+ return;
+
if (d->widget)
d->widget->removeEventFilter(this);
d->widget = widget;
if (d->widget)
d->widget->installEventFilter(this);
+
if (d->popup) {
d->popup->hide();
d->popup->setFocusProxy(d->widget);