v4.0.1 — Fix popover bloqueado tras cerrar sheet
Brew-TUI 4.0.1 — Fix: popover bloqueado tras cerrar sheet
Bug detectado y reportado tras 4.0.0: el popover queda visible pero ninguno de sus botones responde al click después de cerrar un sheet (modal de install/upgrade, Settings, o "What's new in Homebrew"). Los botones aparecen habilitados pero los clicks no llegan, obligando a matar la app y relanzarla.
Causa
Interacción conocida entre NSPopover y SwiftUI.sheet en macOS: al cerrarse el sheet, el _NSPopoverWindow subyacente pierde su key-window status y no lo recupera. La vista sigue dibujándose pero el hit testing de SwiftUI solo enruta eventos a la window key — los clicks sobre los botones se descartan antes de llegar a los handlers.
Fix
Cada .sheet ahora pasa onDismiss: restorePopoverKey, que localiza la NSWindow del popover (match por className conteniendo Popover, con fallback razonable) y llama makeKey() en el siguiente runloop tick. Asíncrono a propósito para no competir con la animación de cierre del sheet.
Aplica a los tres modales:
- Settings
- Install progress
- What's new in Homebrew
Cómo actualizar
brew upgrade --cask molinesdesigns/tap/brew-tui-bar(Solo cambia el menubar app; el CLI y el formato de licencia no cambian. Si ya estás en 4.0.0 y tu licencia funciona, no necesitas tocar nada más.)