• fix(shell): audio switch, bluetooth connect, Alt+F4 power menu
    release / Build Windows .zip (push) Canceled after 0s

    LastSkywalker released this 2026-06-07 20:48:29 +03:00 | 31 commits to main since this release

    Three shell-mode fixes reported from the in-app device pickers.

    • AudioPicker: clicking a device closed the modal without switching.
      onPickItem did setIdx(i) then applyChoice(), but applyChoice read the
      stale col[idx] — which the effect seeds to the current default — so it
      saw isDefault and just played back + onDone(). Pass the clicked device
      explicitly (applyDevice / pickFromColumn). Same stale-closure class as
      PowerMenu v0.7.7 (frontend-ui.md).

    • Bluetooth connect: hRadio=NULL was passed to BluetoothSetServiceState,
      which Win10/11 reject with ERROR_INVALID_PARAMETER (87), so no service
      flipped and no connection was attempted. Open the first local radio via
      BluetoothFindFirstRadio and pass its handle (fallback to NULL). Also the
      result code is the DWORD return value, not GetLastError: we printed the
      latter (Errno(0)), which is why the toast read "errno 0: The operation
      completed successfully" on a real failure. Report r instead.

    • Alt+F4 in shell mode killed the kiosk (exit 0 -> watchdog launched
      Explorer). OnBeforeClose now emits shell:open-power-menu and cancels the
      close in shell mode; a quitRequested flag set by QuitApp still lets the
      deliberate power-menu Exit / tray Quit through. ShellApp opens PowerMenu
      on the event.

    Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com

    Downloads