Worker thread + tray icon repaint fix

- processUtterance runs on a detached std.Thread; Qt event loop stays
  responsive during whisper/letta/melo (icon repaints, menu works)
- setState marshals to main thread via threading.async with thread-id check
- rapid double-click race guarded: state claimed before spawn
- icon: QPainter-drawn antialiased circle (dark rim, transparent bg) —
  bare pixmap.fill rendered blank on the KDE SNI host
- new qt libs: qbrush, qpainter, qrect, qt6zigthreading

👾 Generated with [Letta Code](https://letta.com)

Co-Authored-By: Letta Code <noreply@letta.com>
This commit is contained in:
pierreandLetta Code committed 2026-09-01 19:29:03 +03:00
1 parent f4c08cae74
commit 5b050c09e3
2 files changed
+60 -3

No files matched your search

+4
View File
@@ -16,11 +16,15 @@ pub fn build(b: *std.Build) void {
"qcoreapplication",
"qguiapplication",
"qaction",
"qbrush",
"qcolor",
"qicon",
"qpainter",
"qpixmap",
"qmenu",
"qrect",
"qsystemtrayicon",
"qt6zigthreading",
"qwidget",
};