From 4e8129d7c599f3e48c5858983cdccc5cec5c8c6e Mon Sep 17 00:00:00 2001 From: Lukas Waslowski Date: Sat, 8 Aug 2026 12:05:25 +0200 Subject: [PATCH 1/2] PlaylistFeature: Move certain less-frequently used context menu actions into a "More" submenu --- src/library/trackset/playlistfeature.cpp | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/src/library/trackset/playlistfeature.cpp b/src/library/trackset/playlistfeature.cpp index 0d7e4945622f..9e8df38927c8 100644 --- a/src/library/trackset/playlistfeature.cpp +++ b/src/library/trackset/playlistfeature.cpp @@ -114,13 +114,25 @@ void PlaylistFeature::onRightClickChild( menu.addAction(m_pAddToAutoDJTopAction); menu.addAction(m_pAddToAutoDJReplaceAction); menu.addSeparator(); - menu.addAction(m_pAnalyzePlaylistAction); - menu.addSeparator(); - menu.addAction(m_pImportPlaylistAction); - menu.addAction(m_pExportPlaylistAction); - menu.addAction(m_pExportTrackFilesAction); + + QMenu* moreMenu; + bool showMoreMenu = true; + if (showMoreMenu) { + moreMenu = new QMenu(&menu); + moreMenu->setTitle(tr("More")); + moreMenu->setObjectName("MoreMenu"); + menu.addMenu(moreMenu); + } else { + moreMenu = &menu; + } + + moreMenu->addAction(m_pAnalyzePlaylistAction); + moreMenu->addSeparator(); + moreMenu->addAction(m_pImportPlaylistAction); + moreMenu->addAction(m_pExportPlaylistAction); + moreMenu->addAction(m_pExportTrackFilesAction); #ifdef __ENGINEPRIME__ - menu.addAction(m_pExportPlaylistToEngineAction); + moreMenu->addAction(m_pExportPlaylistToEngineAction); #endif menu.exec(globalPos); } From 818ee9cb322600db15150d7fca75c69937696380 Mon Sep 17 00:00:00 2001 From: Lukas Waslowski Date: Sat, 8 Aug 2026 12:11:38 +0200 Subject: [PATCH 2/2] PlaylistFeature: Move "Shuffle playlist" and "Adopt current order" into the "More" submenu --- src/library/trackset/playlistfeature.cpp | 26 +++++++++++++++--------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/src/library/trackset/playlistfeature.cpp b/src/library/trackset/playlistfeature.cpp index 9e8df38927c8..d4d67b1d4732 100644 --- a/src/library/trackset/playlistfeature.cpp +++ b/src/library/trackset/playlistfeature.cpp @@ -98,13 +98,26 @@ void PlaylistFeature::onRightClickChild( m_pLockPlaylistAction->setText(locked ? tr("Unlock") : tr("Lock")); QMenu menu(m_pSidebarWidget); + + QMenu* moreMenu; + bool showMoreMenu = true; + if (showMoreMenu) { + moreMenu = new QMenu(&menu); + moreMenu->setTitle(tr("More")); + moreMenu->setObjectName("MoreMenu"); + } else { + moreMenu = &menu; + } + menu.addAction(m_pCreatePlaylistAction); menu.addSeparator(); + // TODO If playlist is selected and has more than one track selected // show "Shuffle selected tracks", else show "Shuffle playlist"? - menu.addAction(m_pShufflePlaylistAction); - menu.addAction(m_pOrderByCurrentPosAction); - menu.addSeparator(); + moreMenu->addAction(m_pShufflePlaylistAction); + moreMenu->addAction(m_pOrderByCurrentPosAction); + moreMenu->addSeparator(); + menu.addAction(m_pRenamePlaylistAction); menu.addAction(m_pDuplicatePlaylistAction); menu.addAction(m_pDeletePlaylistAction); @@ -115,15 +128,8 @@ void PlaylistFeature::onRightClickChild( menu.addAction(m_pAddToAutoDJReplaceAction); menu.addSeparator(); - QMenu* moreMenu; - bool showMoreMenu = true; if (showMoreMenu) { - moreMenu = new QMenu(&menu); - moreMenu->setTitle(tr("More")); - moreMenu->setObjectName("MoreMenu"); menu.addMenu(moreMenu); - } else { - moreMenu = &menu; } moreMenu->addAction(m_pAnalyzePlaylistAction);