Merge pull request #1201 from ThatOneCalculator/feat/external-process-monitor

feat: external process monitor
This commit is contained in:
Lemmy
2025-12-30 13:29:57 -05:00
committed by GitHub
18 changed files with 92 additions and 3 deletions
+5
View File
@@ -2417,6 +2417,11 @@
},
"warning-color": {
"label": "Warnfarbe"
},
"external-monitor": {
"description": "Geben Sie den Befehl oder Anwendungspfad ein, um die externe Systemmonitor-Anwendung zu starten.",
"label": "Externer Systemmonitor-Befehl",
"placeholder": "resources || missioncenter || jdsystemmonitor || corestats || system-monitoring-center || gnome-system-monitor || plasma-systemmonitor || mate-system-monitor || ukui-system-monitor || deepin-system-monitor || pantheon-system-monitor"
}
},
"user-interface": {
+5
View File
@@ -2417,6 +2417,11 @@
},
"warning-color": {
"label": "Warning color"
},
"external-monitor": {
"description": "Enter the command or application path to launch when activating the external system monitor application.",
"label": "External system monitor command",
"placeholder": "resources || missioncenter || jdsystemmonitor || corestats || system-monitoring-center || gnome-system-monitor || plasma-systemmonitor || mate-system-monitor || ukui-system-monitor || deepin-system-monitor || pantheon-system-monitor"
}
},
"user-interface": {
+5
View File
@@ -2417,6 +2417,11 @@
},
"warning-color": {
"label": "Color de advertencia"
},
"external-monitor": {
"description": "Ingrese el comando o ruta de la aplicación para ejecutar al activar la aplicación externa del monitor del sistema.",
"label": "Comando del monitor del sistema externo",
"placeholder": "resources || missioncenter || jdsystemmonitor || corestats || system-monitoring-center || gnome-system-monitor || plasma-systemmonitor || mate-system-monitor || ukui-system-monitor || deepin-system-monitor || pantheon-system-monitor"
}
},
"user-interface": {
+5
View File
@@ -2417,6 +2417,11 @@
},
"warning-color": {
"label": "Couleur d'avertissement"
},
"external-monitor": {
"description": "Entrez la commande ou le chemin de l'application à lancer lors de l'activation de l'application externe de surveillance du système.",
"label": "Commande du moniteur système externe",
"placeholder": "resources || missioncenter || jdsystemmonitor || corestats || system-monitoring-center || gnome-system-monitor || plasma-systemmonitor || mate-system-monitor || ukui-system-monitor || deepin-system-monitor || pantheon-system-monitor"
}
},
"user-interface": {
+5
View File
@@ -2417,6 +2417,11 @@
},
"warning-color": {
"label": "Figyelmeztetési szín"
},
"external-monitor": {
"description": "Adja meg a parancsot vagy alkalmazás elérési útját a külső rendszermonitor alkalmazás indításához.",
"label": "Külső rendszermonitor parancs",
"placeholder": "resources || missioncenter || jdsystemmonitor || corestats || system-monitoring-center || gnome-system-monitor || plasma-systemmonitor || mate-system-monitor || ukui-system-monitor || deepin-system-monitor || pantheon-system-monitor"
}
},
"user-interface": {
+5
View File
@@ -2417,6 +2417,11 @@
},
"warning-color": {
"label": "警告時の色"
},
"external-monitor": {
"description": "外部システムモニターアプリケーションを起動する際に実行するコマンドまたはアプリケーションパスを入力してください。",
"label": "外部システムモニターコマンド",
"placeholder": "resources || missioncenter || jdsystemmonitor || corestats || system-monitoring-center || gnome-system-monitor || plasma-systemmonitor || mate-system-monitor || ukui-system-monitor || deepin-system-monitor || pantheon-system-monitor"
}
},
"user-interface": {
+5
View File
@@ -2417,6 +2417,11 @@
},
"warning-color": {
"label": "Warning color"
},
"external-monitor": {
"description": "Fermanî an rêya sepanê binivîse ku dema sepana monitora pergala derveyî çalak dike were xebitandin.",
"label": "Fermana monitora pergala derveyî",
"placeholder": "resources || missioncenter || jdsystemmonitor || corestats || system-monitoring-center || gnome-system-monitor || plasma-systemmonitor || mate-system-monitor || ukui-system-monitor || deepin-system-monitor || pantheon-system-monitor"
}
},
"user-interface": {
+5
View File
@@ -2417,6 +2417,11 @@
},
"warning-color": {
"label": "Waarschuwingskleur"
},
"external-monitor": {
"description": "Voer de opdracht of applicatiepad in om te starten bij het activeren van de externe systeemmonitor applicatie.",
"label": "Externe systeemmonitor opdracht",
"placeholder": "resources || missioncenter || jdsystemmonitor || corestats || system-monitoring-center || gnome-system-monitor || plasma-systemmonitor || mate-system-monitor || ukui-system-monitor || deepin-system-monitor || pantheon-system-monitor"
}
},
"user-interface": {
+5
View File
@@ -2417,6 +2417,11 @@
},
"warning-color": {
"label": "Kolor ostrzegawczy"
},
"external-monitor": {
"description": "Wprowadź polecenie lub ścieżkę aplikacji do uruchomienia przy aktywacji zewnętrznej aplikacji monitora systemu.",
"label": "Polecenie zewnętrznego monitora systemu",
"placeholder": "resources || missioncenter || jdsystemmonitor || corestats || system-monitoring-center || gnome-system-monitor || plasma-systemmonitor || mate-system-monitor || ukui-system-monitor || deepin-system-monitor || pantheon-system-monitor"
}
},
"user-interface": {
+5
View File
@@ -2417,6 +2417,11 @@
},
"warning-color": {
"label": "Cor de aviso"
},
"external-monitor": {
"description": "Digite o comando ou caminho da aplicação para executar ao ativar a aplicação externa de monitoramento do sistema.",
"label": "Comando do monitor do sistema externo",
"placeholder": "resources || missioncenter || jdsystemmonitor || corestats || system-monitoring-center || gnome-system-monitor || plasma-systemmonitor || mate-system-monitor || ukui-system-monitor || deepin-system-monitor || pantheon-system-monitor"
}
},
"user-interface": {
+5
View File
@@ -2417,6 +2417,11 @@
},
"warning-color": {
"label": "Цвет предупреждения"
},
"external-monitor": {
"description": "Введите команду или путь к приложению для запуска при активации внешнего приложения мониторинга системы.",
"label": "Команда внешнего монитора системы",
"placeholder": "resources || missioncenter || jdsystemmonitor || corestats || system-monitoring-center || gnome-system-monitor || plasma-systemmonitor || mate-system-monitor || ukui-system-monitor || deepin-system-monitor || pantheon-system-monitor"
}
},
"user-interface": {
+5
View File
@@ -2417,6 +2417,11 @@
},
"warning-color": {
"label": "Uyarı rengi"
},
"external-monitor": {
"description": "Harici sistem izleyici uygulamasını etkinleştirirken başlatılacak komut veya uygulama yolunu girin.",
"label": "Harici sistem izleyici komutu",
"placeholder": "resources || missioncenter || jdsystemmonitor || corestats || system-monitoring-center || gnome-system-monitor || plasma-systemmonitor || mate-system-monitor || ukui-system-monitor || deepin-system-monitor || pantheon-system-monitor"
}
},
"user-interface": {
+5
View File
@@ -2417,6 +2417,11 @@
},
"warning-color": {
"label": "Колір попередження"
},
"external-monitor": {
"description": "Введіть команду або шлях до програми для запуску при активації зовнішньої програми моніторингу системи.",
"label": "Команда зовнішнього монітора системи",
"placeholder": "resources || missioncenter || jdsystemmonitor || corestats || system-monitoring-center || gnome-system-monitor || plasma-systemmonitor || mate-system-monitor || ukui-system-monitor || deepin-system-monitor || pantheon-system-monitor"
}
},
"user-interface": {
+5
View File
@@ -2417,6 +2417,11 @@
},
"warning-color": {
"label": "警告颜色"
},
"external-monitor": {
"description": "输入启动外部系统监视器应用程序时要执行的命令或应用程序路径。",
"label": "外部系统监视器命令",
"placeholder": "resources || missioncenter || jdsystemmonitor || corestats || system-monitoring-center || gnome-system-monitor || plasma-systemmonitor || mate-system-monitor || ukui-system-monitor || deepin-system-monitor || pantheon-system-monitor"
}
},
"user-interface": {
+2 -1
View File
@@ -270,7 +270,8 @@
"useCustomColors": false,
"warningColor": "",
"criticalColor": "",
"diskPath": "/"
"diskPath": "/",
"externalMonitor": "resources || missioncenter || jdsystemmonitor || corestats || system-monitoring-center || gnome-system-monitor || plasma-systemmonitor || mate-system-monitor || ukui-system-monitor || deepin-system-monitor || pantheon-system-monitor"
},
"dock": {
"enabled": true,
+1
View File
@@ -495,6 +495,7 @@ Singleton {
property string warningColor: ""
property string criticalColor: ""
property string diskPath: "/"
property string externalMonitor: "resources || missioncenter || jdsystemmonitor || corestats || system-monitoring-center || gnome-system-monitor || plasma-systemmonitor || mate-system-monitor || ukui-system-monitor || deepin-system-monitor || pantheon-system-monitor"
}
// dock
+9 -2
View File
@@ -2,6 +2,7 @@ import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
import Quickshell
import Quickshell.Io
import qs.Commons
import qs.Modules.Bar.Extras
import qs.Modules.Panels.Settings
@@ -54,6 +55,10 @@ Rectangle {
readonly property real miniGaugeWidth: Math.max(3, Style.toOdd(root.iconSize * 0.25))
readonly property real textSize: Math.max(7, iconSize * barScaling * 0.6 * (isVertical ? 0.85 : 1.0))
function openExternalMonitor() {
Quickshell.execDetached(["sh", "-c", Settings.data.systemMonitor.externalMonitor]);
}
// Build comprehensive tooltip text with all stats
function buildTooltipText() {
let lines = [];
@@ -135,7 +140,7 @@ Rectangle {
MouseArea {
id: tooltipArea
anchors.fill: parent
acceptedButtons: Qt.LeftButton | Qt.RightButton
acceptedButtons: Qt.LeftButton | Qt.RightButton | Qt.MiddleButton
hoverEnabled: true
onClicked: mouse => {
if (mouse.button === Qt.LeftButton) {
@@ -143,12 +148,14 @@ Rectangle {
TooltipService.hide();
} else if (mouse.button === Qt.RightButton) {
TooltipService.hide();
5;
var popupMenuWindow = PanelService.getPopupMenuWindow(screen);
if (popupMenuWindow) {
popupMenuWindow.showContextMenu(contextMenu);
contextMenu.openAtItem(root, screen);
}
} else if (mouse.button === Qt.MiddleButton) {
TooltipService.hide();
openExternalMonitor();
}
}
onEntered: {
@@ -597,6 +597,16 @@ ColumnLayout {
}
}
NTextInput {
label: I18n.tr("settings.system-monitor.external-monitor.label")
description: I18n.tr("settings.system-monitor.external-monitor.description")
placeholderText: I18n.tr("settings.system-monitor.external-monitor.placeholder")
text: Settings.data.systemMonitor.externalMonitor
isSettings: true
defaultValue: Settings.getDefaultValue("systemMonitor.externalMonitor")
onTextChanged: Settings.data.systemMonitor.externalMonitor = text
}
NDivider {
Layout.fillWidth: true
Layout.topMargin: Style.marginL