Matugen: show toast & log on error

This commit is contained in:
Ly-sec
2025-11-01 11:49:12 +01:00
parent f2a28c1dd5
commit 34a6947ad6
7 changed files with 48 additions and 0 deletions
+4
View File
@@ -1750,6 +1750,10 @@
"disabled": "Hintergrundbild-Farben deaktiviert",
"not-installed": "Matugen nicht installiert - erforderlich für Hintergrundbild-Farbextraktion"
},
"matugen": {
"failed": "Matugen-Verarbeitung fehlgeschlagen",
"failed-general": "Matugen ist beim Verarbeiten der Vorlagen auf einen Fehler gestoßen"
},
"recording": {
"stopping": "Aufnahme wird gestoppt…",
"started": "Aufnahme gestartet",
+4
View File
@@ -1710,6 +1710,10 @@
"disabled": "Wallpaper colors disabled",
"not-installed": "Matugen not installed - required for wallpaper color extraction"
},
"matugen": {
"failed": "Matugen processing failed",
"failed-general": "Matugen encountered an error while processing templates"
},
"recording": {
"stopping": "Stopping recording…",
"started": "Recording started",
+4
View File
@@ -1710,6 +1710,10 @@
"disabled": "Colores del fondo de pantalla desactivados",
"not-installed": "Matugen no instalado - requerido para extraer colores del fondo de pantalla"
},
"matugen": {
"failed": "Error en el procesamiento de Matugen",
"failed-general": "Matugen encontró un error al procesar las plantillas"
},
"recording": {
"stopping": "Deteniendo grabación...",
"started": "Grabación iniciada",
+4
View File
@@ -1710,6 +1710,10 @@
"disabled": "Couleurs du fond d'écran désactivées",
"not-installed": "Matugen non installé - requis pour l'extraction des couleurs du fond d'écran"
},
"matugen": {
"failed": "Échec du traitement Matugen",
"failed-general": "Matugen a rencontré une erreur lors du traitement des modèles"
},
"recording": {
"stopping": "Arrêt de l'enregistrement...",
"started": "Enregistrement démarré",
+4
View File
@@ -1710,6 +1710,10 @@
"disabled": "Cores do papel de parede desativadas",
"not-installed": "Matugen não instalado - necessário para extração de cores do papel de parede"
},
"matugen": {
"failed": "Falha no processamento do Matugen",
"failed-general": "Matugen encontrou um erro ao processar os modelos"
},
"recording": {
"stopping": "Parando gravação…",
"started": "Gravação iniciada",
+4
View File
@@ -1710,6 +1710,10 @@
"disabled": "壁纸颜色已禁用",
"not-installed": "Matugen 未安装 - 壁纸颜色提取所需"
},
"matugen": {
"failed": "Matugen 处理失败",
"failed-general": "Matugen 在处理模板时遇到错误"
},
"recording": {
"stopping": "正在停止录制…",
"started": "录制已开始",
+24
View File
@@ -454,6 +454,30 @@ Singleton {
id: generateProcess
workingDirectory: Quickshell.shellDir
running: false
onExited: function (exitCode) {
if (exitCode !== 0) {
// Capture error output from stderr first, then stdout, or use fallback message
const errorMsg = (stderr.text && stderr.text.trim() !== "")
? stderr.text.trim()
: ((stdout.text && stdout.text.trim() !== "")
? stdout.text.trim()
: I18n.tr("toast.matugen.failed-general"))
Logger.e("AppThemeService", "Matugen process failed with exit code:", exitCode)
if (stderr.text && stderr.text.trim() !== "") {
Logger.e("AppThemeService", "Matugen stderr:", stderr.text)
}
if (stdout.text && stdout.text.trim() !== "") {
Logger.e("AppThemeService", "Matugen stdout:", stdout.text)
}
ToastService.showError(
I18n.tr("toast.matugen.failed"),
errorMsg,
6000
)
}
}
stdout: StdioCollector {
onStreamFinished: {
if (this.text) {