2 months ago
1d84d43Follow-up to #34 (review 4789146976). - Actions menu samples the selection's running state once, when it opens (`openActions`), instead of reading `RunningAppsMonitor` live: an app launching or quitting elsewhere no longer adds or drops the Quit row while the menu is up. All eight open sites now funnel through the one method. - `RootPaletteView` no longer observes `RunningAppsMonitor`, so a workspace launch/terminate stops re-rendering the whole palette; only `LauncherList` observes it, for the running dot. - `RunningAppsMonitor.refresh` republishes only on a real change. - ⌘↵ mirrors the menu row's condition (`kind == .application`) so it can't swallow a press it won't act on. - Quit All confirms via `NSAlert` before terminating, resolving the target list once so the set confirmed is the set that quits. ↵ is bound to Cancel, not the destructive button. - Quitting an app restores focus unless the app quit was `previousApp`. - `xmark.app` -> `xmark.circle`; drop the now-unused `AppLauncher.quitAll`.
Parent2065cfb