TextEditor: add text cursor to assist interface

This will allow us to request assistance for a specific selection
instead of just the position.

Change-Id: Ib8e5b32d4a8f2936e5a6f1b7ac968d7f1d8d9de6
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
David Schulz
2022-05-13 10:05:45 +02:00
parent 1402b16451
commit 59a77a4965
18 changed files with 44 additions and 60 deletions

View File

@@ -334,10 +334,11 @@ QStringList qmlJSAutoComplete(QTextDocument *textDocument,
{
QStringList list;
QmlJSCompletionAssistProcessor processor;
QTextCursor cursor(textDocument);
cursor.setPosition(position);
QScopedPointer<IAssistProposal> proposal(processor.perform( /* The processor takes ownership. */
new QmlJSCompletionAssistInterface(
textDocument,
position,
cursor,
fileName,
reason,
info)));
@@ -978,12 +979,11 @@ bool QmlJSCompletionAssistProcessor::completeUrl(const QString &relativeBasePath
// ------------------------------
// QmlJSCompletionAssistInterface
// ------------------------------
QmlJSCompletionAssistInterface::QmlJSCompletionAssistInterface(QTextDocument *textDocument,
int position,
QmlJSCompletionAssistInterface::QmlJSCompletionAssistInterface(const QTextCursor &cursor,
const Utils::FilePath &fileName,
AssistReason reason,
const SemanticInfo &info)
: AssistInterface(textDocument, position, fileName, reason)
: AssistInterface(cursor, fileName, reason)
, m_semanticInfo(info)
{}