diff --git a/src/plugins/find/searchresulttreeitemroles.h b/src/plugins/find/searchresulttreeitemroles.h index d79877e8de511749875ba73d07ec9b713d339333..1e917255b62287cfe81dbb0a0931dff8d7546ebb 100644 --- a/src/plugins/find/searchresulttreeitemroles.h +++ b/src/plugins/find/searchresulttreeitemroles.h @@ -44,7 +44,7 @@ enum Roles ResultIconRole, SearchTermStartRole, SearchTermLengthRole, - RowOfItem // The ?-th child of its parent is this this item + IsGeneratedRole }; } // namespace Internal diff --git a/src/plugins/find/searchresulttreemodel.cpp b/src/plugins/find/searchresulttreemodel.cpp index 705dedcf4e678d1a99bf01bc77529880c44c5996..a03922114dc6adb77925f6ca03c3607b1e9d2a84 100644 --- a/src/plugins/find/searchresulttreemodel.cpp +++ b/src/plugins/find/searchresulttreemodel.cpp @@ -217,6 +217,9 @@ QVariant SearchResultTreeModel::data(const SearchResultTreeItem *row, int role) case ItemDataRoles::SearchTermLengthRole: result = row->item.textMarkLength; break; + case ItemDataRoles::IsGeneratedRole: + result = row->isGenerated(); + break; // TODO this looks stupid in case of symbol tree, is it necessary? // case Qt::BackgroundRole: // if (row->parent() && row->parent()->parent()) diff --git a/src/plugins/find/searchresulttreeview.cpp b/src/plugins/find/searchresulttreeview.cpp index 4cd46ac30fce530935402e63687523284b4374e2..459736dc008d4a85fdb3792e627ba1ff7edd287f 100644 --- a/src/plugins/find/searchresulttreeview.cpp +++ b/src/plugins/find/searchresulttreeview.cpp @@ -46,7 +46,7 @@ SearchResultTreeView::SearchResultTreeView(QWidget *parent) setItemDelegate(new SearchResultTreeItemDelegate(this)); setIndentation(14); setUniformRowHeights(true); - setExpandsOnDoubleClick(false); + setExpandsOnDoubleClick(true); header()->hide(); connect(this, SIGNAL(activated(QModelIndex)), this, SLOT(emitJumpToSearchResult(QModelIndex))); @@ -78,6 +78,8 @@ void SearchResultTreeView::addResults(const QList<Find::SearchResultItem> &items void SearchResultTreeView::emitJumpToSearchResult(const QModelIndex &index) { + if (model()->data(index, ItemDataRoles::IsGeneratedRole).toBool()) + return; SearchResultItem item = model()->data(index, ItemDataRoles::ResultItemRole).value<SearchResultItem>(); emit jumpToSearchResult(item);