forked from qt-creator/qt-creator
Merge remote-tracking branch 'origin/5.0'
Conflicts: cmake/QtCreatorIDEBranding.cmake qbs/modules/qtc/qtc.qbs qtcreator_ide_branding.pri src/plugins/android/androidconfigurations.cpp Change-Id: Icd2b0fda2b2653656285bbbe457c30c9cd414d3f
This commit is contained in:
@@ -74,6 +74,7 @@ public:
|
||||
quint64 hash() const override;
|
||||
|
||||
const QString &sortText() const;
|
||||
bool hasSortText() const;
|
||||
|
||||
bool operator <(const LanguageClientCompletionItem &other) const;
|
||||
|
||||
@@ -216,6 +217,11 @@ const QString &LanguageClientCompletionItem::sortText() const
|
||||
return m_sortText;
|
||||
}
|
||||
|
||||
bool LanguageClientCompletionItem::hasSortText() const
|
||||
{
|
||||
return m_item.sortText().has_value();
|
||||
}
|
||||
|
||||
QString LanguageClientCompletionItem::filterText() const
|
||||
{
|
||||
if (m_filterText.isEmpty()) {
|
||||
@@ -257,13 +263,21 @@ class LanguageClientCompletionModel : public GenericProposalModel
|
||||
public:
|
||||
// GenericProposalModel interface
|
||||
bool containsDuplicates() const override { return false; }
|
||||
bool isSortable(const QString &/*prefix*/) const override { return true; }
|
||||
bool isSortable(const QString &/*prefix*/) const override;
|
||||
void sort(const QString &/*prefix*/) override;
|
||||
bool supportsPrefixExpansion() const override { return false; }
|
||||
|
||||
QList<AssistProposalItemInterface *> items() const { return m_currentItems; }
|
||||
};
|
||||
|
||||
bool LanguageClientCompletionModel::isSortable(const QString &) const
|
||||
{
|
||||
return Utils::anyOf(items(), [](AssistProposalItemInterface *i) {
|
||||
auto item = dynamic_cast<LanguageClientCompletionItem *>(i);
|
||||
return !item || item->hasSortText();
|
||||
});
|
||||
}
|
||||
|
||||
void LanguageClientCompletionModel::sort(const QString &/*prefix*/)
|
||||
{
|
||||
std::sort(m_currentItems.begin(), m_currentItems.end(),
|
||||
|
||||
Reference in New Issue
Block a user