diff --git a/applets/taskmanager/package/contents/ui/Task.qml b/applets/taskmanager/package/contents/ui/Task.qml --- a/applets/taskmanager/package/contents/ui/Task.qml +++ b/applets/taskmanager/package/contents/ui/Task.qml @@ -69,6 +69,8 @@ }) readonly property bool highlighted: (inPopup && activeFocus) || (!inPopup && containsMouse) + || (task.contextMenu && task.contextMenu.visualParent === task && task.contextMenu.status === PlasmaComponents.DialogStatus.Open) + || (groupDialog.visible && groupDialog.visualParent === task) function hideToolTipTemporarily() { toolTipArea.hideToolTip(); @@ -212,7 +214,8 @@ } function showContextMenu(args) { - tasks.createContextMenu(task, modelIndex(), args).show(); + contextMenu = tasks.createContextMenu(task, modelIndex(), args); + contextMenu.show(); } function updateAudioStreams() { @@ -394,7 +397,7 @@ anchors.fill: parent - active: task.highlighted || (task.contextMenu && task.contextMenu.status == PlasmaComponents.DialogStatus.Open) + active: task.highlighted enabled: true usesPlasmaTheme: false @@ -499,8 +502,7 @@ }, State { name: "hovered" - when: ((task.highlighted && frame.hasElementPrefix("hover") && plasmoid.configuration.taskHoverEffect) - || (contextMenu.status == PlasmaComponents.DialogStatus.Open && contextMenu.visualParent == task)) + when: task.highlighted && frame.hasElementPrefix("hover") && plasmoid.configuration.taskHoverEffect PropertyChanges { target: frame @@ -518,16 +520,16 @@ }, State { name: "minimized" - when: model.IsMinimized === true && !(groupDialog.visible && groupDialog.visualParent == task) + when: model.IsMinimized === true PropertyChanges { target: frame basePrefix: "minimized" } }, State { name: "active" - when: model.IsActive === true || groupDialog.visible && groupDialog.visualParent == task + when: model.IsActive === true PropertyChanges { target: frame