| quick-260917-eta |
01 |
infra |
| tauri |
| rust |
| desktop |
| tray |
| ipc |
|
| phase |
provides |
| 18-desktop-client-fertigstellen |
Tauri-Desktop-Client mit Tray-Menue (open/update/autostart/quit) |
|
|
| Run-Handler laesst programmatischen app.exit(0) durch, verhindert Exit nur noch bei code: None (Nutzer schliesst letztes Fenster) |
| Tray „Öffnen“ und Linksklick auf das Tray-Symbol rufen w.unminimize() vor w.show(), holen ein per Win+D minimiertes Fenster zurueck |
|
| desktop-client |
| tray-verhalten |
|
| tokens |
tasks |
commits |
| 600 |
2 |
2 |
|
| added |
patterns |
|
|
| RunEvent::ExitRequested { code: None, .. } als Muster statt if code.is_none() — unterscheidet Nutzer-initiierten Fenster-Close (code: None, App bleibt im Infobereich) von programmatischem app.exit() (code: Some, muss durchlaufen) |
|
|
| created |
modified |
|
|
| apps/desktop/src-tauri/src/lib.rs |
| CHANGELOG.md |
|
|
| Muster code: None statt verschachteltem if code.is_none() gewaehlt — kuerzer, ein Einrueckungsniveau, clippy-sauber |
| cargo fmt verworfen: es haette das neue if-let auf vier Zeilen umgebrochen, was den scoped grep-Nachweis im Gate zerstoert haette (exakte Ein-Zeilen-Zeichenkette). Einzeilige, rustfmt-vertretbare Form beibehalten, keine anderen Zeilen angefasst. |
|
|
| id |
description |
requirement |
verification |
human_judgment |
rationale |
| D1 |
Tray-Menue „Beenden“ beendet den Desktop-Client statt weiterzulaufen |
QUICK-260917-ETA |
| kind |
ref |
status |
| other |
grep-Gate RUST-OK (Run-Handler-Muster, api.prevent_exit() genau 1x, app.exit(0)/api.prevent_close() unveraendert vorhanden) + cargo check/clippy 0 Warnungen |
pass |
|
|
true |
Reale Verhaltenspruefung (Tray „Beenden“ beendet tessera-desktop.exe) erfordert die Windows-Test-VM; macht laut Plan der Orchestrator im Anschluss, nicht dieser Ausfuehrungslauf. |
|
| id |
description |
requirement |
verification |
human_judgment |
rationale |
| D2 |
Tray „Öffnen“ und Linksklick auf das Tray-Symbol holen ein minimiertes Fenster zurueck |
QUICK-260917-ETA |
| kind |
ref |
status |
| other |
grep-Gate RUST-OK (w.unminimize() genau 2x, jeweils direkt vor w.show()) |
pass |
|
|
true |
Reale Verhaltenspruefung (Win+D, dann „Öffnen“) erfordert die Windows-Test-VM; macht laut Plan der Orchestrator im Anschluss. |
|
| id |
description |
verification |
human_judgment |
| D3 |
CHANGELOG dokumentiert beide Fixe unter Unveröffentlicht/Behoben |
| kind |
ref |
status |
| unit |
apps/web/src/lib/changelog.test.ts (10 Tests) + grep-Gate CHANGELOG-GATE-OK |
pass |
|
|
false |
|
|
5min |
2026-09-17 |
complete |