1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2025-12-06 21:45:38 -05:00

execDetached for process menu operations

This commit is contained in:
bbedward
2025-07-25 17:21:51 -04:00
parent e14afcefd4
commit f26c01916b

View File

@@ -1,5 +1,6 @@
import QtQuick import QtQuick
import QtQuick.Controls import QtQuick.Controls
import Quickshell
import Quickshell.Io import Quickshell.Io
import qs.Common import qs.Common
import qs.Services import qs.Services
@@ -96,8 +97,7 @@ Popup {
cursorShape: Qt.PointingHandCursor cursorShape: Qt.PointingHandCursor
onClicked: { onClicked: {
if (processContextMenu.processData) { if (processContextMenu.processData) {
copyPidProcess.command = ["wl-copy", processContextMenu.processData.pid.toString()]; Quickshell.execDetached(["wl-copy", processContextMenu.processData.pid.toString()]);
copyPidProcess.running = true;
} }
processContextMenu.close(); processContextMenu.close();
} }
@@ -128,8 +128,7 @@ Popup {
onClicked: { onClicked: {
if (processContextMenu.processData) { if (processContextMenu.processData) {
let processName = processContextMenu.processData.displayName || processContextMenu.processData.command; let processName = processContextMenu.processData.displayName || processContextMenu.processData.command;
copyNameProcess.command = ["wl-copy", processName]; Quickshell.execDetached(["wl-copy", processName]);
copyNameProcess.running = true;
} }
processContextMenu.close(); processContextMenu.close();
} }
@@ -155,7 +154,7 @@ Popup {
height: 28 height: 28
radius: Theme.cornerRadiusSmall radius: Theme.cornerRadiusSmall
color: killArea.containsMouse ? Qt.rgba(Theme.error.r, Theme.error.g, Theme.error.b, 0.12) : "transparent" color: killArea.containsMouse ? Qt.rgba(Theme.error.r, Theme.error.g, Theme.error.b, 0.12) : "transparent"
enabled: processContextMenu.processData && processContextMenu.processData.pid > 1000 enabled: processContextMenu.processData
opacity: enabled ? 1 : 0.5 opacity: enabled ? 1 : 0.5
Text { Text {
@@ -176,8 +175,7 @@ Popup {
enabled: parent.enabled enabled: parent.enabled
onClicked: { onClicked: {
if (processContextMenu.processData) { if (processContextMenu.processData) {
killProcess.command = ["kill", processContextMenu.processData.pid.toString()]; Quickshell.execDetached(["kill", processContextMenu.processData.pid.toString()]);
killProcess.running = true;
} }
processContextMenu.close(); processContextMenu.close();
} }
@@ -210,8 +208,7 @@ Popup {
enabled: parent.enabled enabled: parent.enabled
onClicked: { onClicked: {
if (processContextMenu.processData) { if (processContextMenu.processData) {
forceKillProcess.command = ["kill", "-9", processContextMenu.processData.pid.toString()]; Quickshell.execDetached(["kill", "-9", processContextMenu.processData.pid.toString()]);
forceKillProcess.running = true;
} }
processContextMenu.close(); processContextMenu.close();
} }
@@ -219,25 +216,4 @@ Popup {
} }
} }
} }
Process {
id: copyPidProcess
running: false
}
Process {
id: copyNameProcess
running: false
}
Process {
id: killProcess
running: false
}
Process {
id: forceKillProcess
running: false
}
} }