forked from qt-creator/qt-creator
Merge remote-tracking branch 'origin/4.9'
Conflicts: qbs/modules/qtc/qtc.qbs qtcreator.pri src/plugins/debugger/debuggerkitinformation.cpp src/plugins/languageclient/languageclientmanager.cpp src/plugins/plugins.pro src/plugins/projectexplorer/kit.cpp src/plugins/projectexplorer/kitmanager.cpp Change-Id: I66fb941202991f35f7d7761430b21e42dfc678a8
This commit is contained in:
@@ -125,7 +125,10 @@ void LanguageClientManager::deleteClient(Client *client)
|
||||
QTC_ASSERT(client, return);
|
||||
client->disconnect();
|
||||
managerInstance->m_clients.removeAll(client);
|
||||
client->deleteLater();
|
||||
if (managerInstance->m_shuttingDown)
|
||||
delete client;
|
||||
else
|
||||
client->deleteLater();
|
||||
}
|
||||
|
||||
void LanguageClientManager::shutdown()
|
||||
@@ -210,6 +213,18 @@ void LanguageClientManager::editorOpened(Core::IEditor *editor)
|
||||
(const QTextCursor &cursor){
|
||||
findUsages(filePath, cursor);
|
||||
});
|
||||
connect(widget, &TextEditorWidget::cursorPositionChanged, this, [this, widget](){
|
||||
// TODO This would better be a compressing timer
|
||||
QTimer::singleShot(50, this,
|
||||
[this, widget = QPointer<TextEditorWidget>(widget)]() {
|
||||
if (widget) {
|
||||
for (Client *client : this->reachableClients()) {
|
||||
if (client->isSupportedDocument(widget->textDocument()))
|
||||
client->cursorPositionChanged(widget);
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user