From 8247d578c735b4ce74f76b86aaa9065d76cb1498 Mon Sep 17 00:00:00 2001 From: David Schulz Date: Thu, 16 Mar 2023 07:13:42 +0100 Subject: [PATCH] TextEditor: skip auto completion while suggestion is visible The use can still explicitly request completions in that case via the keyboard shortcut. Change-Id: I4ed47232a24288c540d1357c0f876a1cdfcfec08 Reviewed-by: Reviewed-by: Marcus Tillmanns --- src/plugins/texteditor/codeassist/codeassistant.cpp | 1 + src/plugins/texteditor/texteditor.cpp | 5 +++++ src/plugins/texteditor/texteditor.h | 1 + 3 files changed, 7 insertions(+) diff --git a/src/plugins/texteditor/codeassist/codeassistant.cpp b/src/plugins/texteditor/codeassist/codeassistant.cpp index 34ba897d8db..b092d69bc04 100644 --- a/src/plugins/texteditor/codeassist/codeassistant.cpp +++ b/src/plugins/texteditor/codeassist/codeassistant.cpp @@ -444,6 +444,7 @@ void CodeAssistantPrivate::automaticProposalTimeout() { if (isWaitingForProposal() || m_editorWidget->multiTextCursor().hasMultipleCursors() + || m_editorWidget->suggestionVisible() || (isDisplayingProposal() && !m_proposalWidget->isFragile())) { return; } diff --git a/src/plugins/texteditor/texteditor.cpp b/src/plugins/texteditor/texteditor.cpp index b92d848d4ea..d2c253fb6c0 100644 --- a/src/plugins/texteditor/texteditor.cpp +++ b/src/plugins/texteditor/texteditor.cpp @@ -5952,6 +5952,11 @@ void TextEditorWidget::clearSuggestion() d->clearCurrentSuggestion(); } +bool TextEditorWidget::suggestionVisible() const +{ + return d->m_suggestionBlock.isValid(); +} + #ifdef WITH_TESTS void TextEditorWidget::processTooltipRequest(const QTextCursor &c) { diff --git a/src/plugins/texteditor/texteditor.h b/src/plugins/texteditor/texteditor.h index db20e0beb5f..31c4c9d6bf4 100644 --- a/src/plugins/texteditor/texteditor.h +++ b/src/plugins/texteditor/texteditor.h @@ -471,6 +471,7 @@ public: void insertSuggestion(const QString &suggestion); void clearSuggestion(); + bool suggestionVisible() const; #ifdef WITH_TESTS void processTooltipRequest(const QTextCursor &c);