Release v0.6.0

This commit is contained in:
Omni
2026-04-20 20:57:23 +01:00
parent 69fabb32e6
commit 2ff09a1448
144 changed files with 4841 additions and 1306 deletions

View File

@@ -3,9 +3,12 @@ Main window dialogs and cleanup mixin.
Settings, About, open URL, cleanup_processes, closeEvent.
"""
import logging
import os
import subprocess
logger = logging.getLogger(__name__)
from jackify.frontends.gui.dialogs.settings_dialog import SettingsDialog
@@ -21,6 +24,17 @@ class MainWindowDialogsMixin:
except RuntimeError:
return None
# Disconnect all signals before stopping to prevent callbacks to a dying widget.
try:
thread.finished.disconnect()
except Exception:
pass
for _sig in ("update_available", "no_update", "check_failed", "cache_ready", "progress_update"):
try:
getattr(thread, _sig).disconnect()
except Exception:
pass
try:
thread.requestInterruption()
except Exception:
@@ -37,14 +51,9 @@ class MainWindowDialogsMixin:
except Exception:
pass
try:
thread.terminate()
except Exception:
pass
try:
if not thread.wait(10000):
print(f"WARNING: {thread_name} still running during shutdown")
logger.warning("%s still running during shutdown", thread_name)
except Exception:
pass
return None