Fix minor bugs related to selection/context menus

This commit is contained in:
Bart De Vries 2021-09-20 09:36:00 +02:00
parent 4b2da3533c
commit 3f0dadd901
2 changed files with 8 additions and 8 deletions

View File

@ -248,13 +248,6 @@ Kirigami.SwipeListItem {
} }
} }
} }
Controls.Menu {
id: contextMenu
Controls.MenuItem {
action: listView.addToQueueAction
}
}
} }
onClicked: { onClicked: {

View File

@ -43,7 +43,6 @@ ListView {
Connections { Connections {
target: listView.model target: listView.model
function onModelAboutToBeReset() { function onModelAboutToBeReset() {
startOfSelection = -1;
selectionForContextMenu = []; selectionForContextMenu = [];
listView.selectionModel.clear(); listView.selectionModel.clear();
listView.selectionModel.setCurrentIndex(model.index(0, 0), ItemSelectionModel.Current); // Only set current item; don't select it listView.selectionModel.setCurrentIndex(model.index(0, 0), ItemSelectionModel.Current); // Only set current item; don't select it
@ -230,34 +229,42 @@ ListView {
Controls.MenuItem { Controls.MenuItem {
action: listView.addToQueueAction action: listView.addToQueueAction
visible: !listView.isQueue && (singleSelectedEntry ? !singleSelectedEntry.queueStatus : true) visible: !listView.isQueue && (singleSelectedEntry ? !singleSelectedEntry.queueStatus : true)
height: visible ? implicitHeight : 0 // workaround for qqc2-breeze-style
} }
Controls.MenuItem { Controls.MenuItem {
action: listView.removeFromQueueAction action: listView.removeFromQueueAction
visible: singleSelectedEntry ? singleSelectedEntry.queueStatus : true visible: singleSelectedEntry ? singleSelectedEntry.queueStatus : true
height: visible ? implicitHeight : 0 // workaround for qqc2-breeze-style
} }
Controls.MenuItem { Controls.MenuItem {
action: listView.markPlayedAction action: listView.markPlayedAction
visible: singleSelectedEntry ? !singleSelectedEntry.read : true visible: singleSelectedEntry ? !singleSelectedEntry.read : true
height: visible ? implicitHeight : 0 // workaround for qqc2-breeze-style
} }
Controls.MenuItem { Controls.MenuItem {
action: listView.markNotPlayedAction action: listView.markNotPlayedAction
visible: singleSelectedEntry ? singleSelectedEntry.read : true visible: singleSelectedEntry ? singleSelectedEntry.read : true
height: visible ? implicitHeight : 0 // workaround for qqc2-breeze-style
} }
Controls.MenuItem { Controls.MenuItem {
action: listView.markNewAction action: listView.markNewAction
visible: singleSelectedEntry ? !singleSelectedEntry.new : true visible: singleSelectedEntry ? !singleSelectedEntry.new : true
height: visible ? implicitHeight : 0 // workaround for qqc2-breeze-style
} }
Controls.MenuItem { Controls.MenuItem {
action: listView.markNotNewAction action: listView.markNotNewAction
visible: singleSelectedEntry ? singleSelectedEntry.new : true visible: singleSelectedEntry ? singleSelectedEntry.new : true
height: visible ? implicitHeight : 0 // workaround for qqc2-breeze-style
} }
Controls.MenuItem { Controls.MenuItem {
action: listView.downloadEnclosureAction action: listView.downloadEnclosureAction
visible: singleSelectedEntry ? (singleSelectedEntry.hasEnclosure ? singleSelectedEntry.enclosure.status !== Enclosure.Downloaded : false) : true visible: singleSelectedEntry ? (singleSelectedEntry.hasEnclosure ? singleSelectedEntry.enclosure.status !== Enclosure.Downloaded : false) : true
height: visible ? implicitHeight : 0 // workaround for qqc2-breeze-style
} }
Controls.MenuItem { Controls.MenuItem {
action: listView.deleteEnclosureAction action: listView.deleteEnclosureAction
visible: singleSelectedEntry ? (singleSelectedEntry.hasEnclosure ? singleSelectedEntry.enclosure.status !== Enclosure.Downloadable : false) : true visible: singleSelectedEntry ? (singleSelectedEntry.hasEnclosure ? singleSelectedEntry.enclosure.status !== Enclosure.Downloadable : false) : true
height: visible ? implicitHeight : 0 // workaround for qqc2-breeze-style
} }
onClosed: { onClosed: {
// reset to normal selection if this context menu is closed // reset to normal selection if this context menu is closed