diff options
author | Daniel Poelzleithner <git@poelzi.org> | 2020-12-01 02:08:29 +0100 |
---|---|---|
committer | Daniel Poelzleithner <git@poelzi.org> | 2020-12-01 02:08:29 +0100 |
commit | 6cabebd384330d85ff3c0956297abb37e8c199de (patch) | |
tree | 687d4f49151f4ccb410354dd3ab1fb82a7a8d49b /src/widget/wlibrarysidebar.cpp | |
parent | a05573b9eed290c05039b5a2921deca9503eb570 (diff) |
Don't activate when not expected.
Only activate playlists when already in focus.
Add option to scroll but not select sidebar items.
Diffstat (limited to 'src/widget/wlibrarysidebar.cpp')
-rw-r--r-- | src/widget/wlibrarysidebar.cpp | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/widget/wlibrarysidebar.cpp b/src/widget/wlibrarysidebar.cpp index 1f7ce2e076..74c0439a9d 100644 --- a/src/widget/wlibrarysidebar.cpp +++ b/src/widget/wlibrarysidebar.cpp @@ -224,19 +224,22 @@ void WLibrarySidebar::selectIndex(const QModelIndex& index) { } /// Selects a child index from a feature and ensures visibility -void WLibrarySidebar::selectChildIndex(const QModelIndex& index) { +void WLibrarySidebar::selectChildIndex(const QModelIndex& index, bool selectItem) { SidebarModel* sidebarModel = qobject_cast<SidebarModel*>(model()); VERIFY_OR_DEBUG_ASSERT(sidebarModel) { qDebug() << "model() is not SidebarModel"; return; } QModelIndex translated = sidebarModel->translateChildIndex(index); - auto pModel = new QItemSelectionModel(sidebarModel); - pModel->select(translated, QItemSelectionModel::Select); - if (selectionModel()) { - selectionModel()->deleteLater(); + + if (selectItem) { + auto pModel = new QItemSelectionModel(sidebarModel); + pModel->select(translated, QItemSelectionModel::Select); + if (selectionModel()) { + selectionModel()->deleteLater(); + } + setSelectionModel(pModel); } - setSelectionModel(pModel); QModelIndex parentIndex = translated.parent(); while (parentIndex.isValid()) { |