From 909cb3859b1b68408cbf71354c95b6bf39d15c12 Mon Sep 17 00:00:00 2001 From: David Schulz Date: Wed, 12 Feb 2020 10:36:09 +0100 Subject: [PATCH] Editor: update proposal widget after editor contents changed Also when text is removed via shortcuts. Fixes: QTCREATORBUG-15038 Change-Id: I1c78b9306594fbf13378a55b27be18769de141a6 Reviewed-by: Christian Stenger --- .../texteditor/codeassist/functionhintproposalwidget.cpp | 2 -- src/plugins/texteditor/codeassist/genericproposalwidget.cpp | 2 -- src/plugins/texteditor/texteditor.cpp | 5 ++--- 3 files changed, 2 insertions(+), 7 deletions(-) diff --git a/src/plugins/texteditor/codeassist/functionhintproposalwidget.cpp b/src/plugins/texteditor/codeassist/functionhintproposalwidget.cpp index 292c46ccccf..6abdeff6087 100644 --- a/src/plugins/texteditor/codeassist/functionhintproposalwidget.cpp +++ b/src/plugins/texteditor/codeassist/functionhintproposalwidget.cpp @@ -292,8 +292,6 @@ bool FunctionHintProposalWidget::eventFilter(QObject *obj, QEvent *e) if (d->m_model && d->m_model->size() > 1) return false; } - if (QTC_GUARD(d->m_assistant)) - d->m_assistant->notifyChange(); } break; case QEvent::WindowDeactivate: diff --git a/src/plugins/texteditor/codeassist/genericproposalwidget.cpp b/src/plugins/texteditor/codeassist/genericproposalwidget.cpp index 92f3e9a3b91..241a98951d5 100644 --- a/src/plugins/texteditor/codeassist/genericproposalwidget.cpp +++ b/src/plugins/texteditor/codeassist/genericproposalwidget.cpp @@ -665,8 +665,6 @@ bool GenericProposalWidget::eventFilter(QObject *o, QEvent *e) } QApplication::sendEvent(const_cast(d->m_underlyingWidget), e); - if (isVisible()) - d->m_assistant->notifyChange(); return true; } diff --git a/src/plugins/texteditor/texteditor.cpp b/src/plugins/texteditor/texteditor.cpp index 635acd6e661..361419db7fb 100644 --- a/src/plugins/texteditor/texteditor.cpp +++ b/src/plugins/texteditor/texteditor.cpp @@ -741,7 +741,6 @@ public: QTimer m_highlightBlocksTimer; CodeAssistant m_codeAssistant; - bool m_assistRelevantContentAdded = false; QList m_hoverHandlers; // Not owned HoverHandlerRunner m_hoverHandlerRunner; @@ -1502,8 +1501,8 @@ void TextEditorWidgetPrivate::editorContentsChange(int position, int charsRemove snippetCheckCursor(cursor); } - if (charsAdded != 0 && q->document()->characterAt(position + charsAdded - 1).isPrint()) - m_assistRelevantContentAdded = true; + if ((charsAdded != 0 && q->document()->characterAt(position + charsAdded - 1).isPrint()) || charsRemoved != 0) + m_codeAssistant.notifyChange(); int newBlockCount = doc->blockCount(); if (!q->hasFocus() && newBlockCount != m_blockCount) {