Merge remote-tracking branch 'origin/14.0'

Conflicts:
	src/plugins/qmljseditor/qmljseditorsettings.cpp

Change-Id: I443424afdfe48cdfc3d083d8e91335e937fcfdb6
This commit is contained in:
Eike Ziller
2024-06-27 11:41:54 +02:00
108 changed files with 1869 additions and 1222 deletions

View File

@@ -358,8 +358,14 @@ void ClangdCompletionItem::apply(TextDocumentManipulator &manipulator,
}
// Avoid inserting characters that are already there
// For include file completions, also consider a possibly pre-existing
// closing quote or angle bracket.
QTextCursor cursor = manipulator.textCursorAt(rangeStart);
cursor.movePosition(QTextCursor::EndOfWord);
if (kind == CompletionItemKind::File && !textToBeInserted.isEmpty()
&& textToBeInserted.right(1) == manipulator.textAt(cursor.position(), 1)) {
cursor.setPosition(cursor.position() + 1);
}
const QString textAfterCursor = manipulator.textAt(currentPos, cursor.position() - currentPos);
if (currentPos < cursor.position()
&& textToBeInserted != textAfterCursor