Skip to content

feat(hud): close/minimize controls + app logo (v3.5.2) - #17

Merged
Shaan-alpha merged 2 commits into
mainfrom
feature/hud-close-button-logo
Jun 20, 2026
Merged

Shaan-alpha merged 2 commits into
mainfrom
feature/hud-close-button-logo

Conversation

@Shaan-alpha

Copy link
Copy Markdown
Owner

v3.5.2 — HUD close button & app logo

Close + minimize controls

The frameless HUD now has a top title bar with × and – buttons.

  • × sends a shutdown command over the WebSocket → the backend stops TTS playback + queue and reminders, then os._exit(0) → and the HUD destroys its own window via a pywebview js_api. Both processes exit, the mic is released, nothing is left running.
  • – minimizes the window via the same js_api.

App logo

An arc-reactor "J" mark matching the HUD's cyan theme:

  • hud/web/logo.svg — favicon + brand mark in the title bar
  • assets/jarvis.png + multi-size assets/jarvis.ico (drawn with Pillow; regen via assets/make_logo.py)
  • wired into jarvis.spec (icon=) so the built .exe and window carry it

UI cleanup

Slim brand title bar; removed a dead .top selector from the reduced-motion rule; window height 380 → 410 to fit the bar.

Verification

  • 269 tests pass (+2: shutdown WS dispatch, shutdown handler stops services then exits); lint clean.
  • Live: clicking × shut down the backend (exit 0) and closed the HUD; tasklist confirmed no orphan Jarvis processes.

🤖 Generated with Claude Code

Shaan-alpha and others added 2 commits June 19, 2026 04:19
- feat(hud): add a title bar with minimize (–) and close (×) buttons to the
  frameless HUD. Close sends a `shutdown` WS command — the backend stops TTS
  playback/queue + reminders then os._exit(0) — and the HUD destroys its own
  window via a pywebview js_api, so both processes exit and the mic is released
  with no orphan left running.
- feat(logo): an arc-reactor "J" mark — hud/web/logo.svg (favicon + title-bar
  brand mark) and a Pillow-drawn assets/jarvis.png + multi-size assets/jarvis.ico
  (regen via assets/make_logo.py), wired into jarvis.spec (icon=) for the .exe.
- fix(hud-ui): slim brand title bar; drop a dead `.top` selector from the
  reduced-motion rule; window height 380 -> 410 for the new bar.
- test: +shutdown WS dispatch, +shutdown handler stops services then exits.
- chore: bump pyproject 3.5.1 -> 3.5.2 + CHANGELOG.

269 tests pass; lint 0. Verified live: clicking × shut down the backend (exit 0)
and closed the HUD; no orphan Jarvis processes remained.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Rework the fluid orb into a contained glass sphere: a clipping .orb-body
wrapper keeps the screen-blended colour layers inside a crisp circle over a
deep base (vivid flow instead of washing out to white), with a glassy
.orb-rim (bright top edge, soft dark bottom, faint accent ring) and a
smaller, repositioned specular glint.

orb.js is untouched (it only sets --level/data-state on #orb, which inherit
to the now-nested .blob layers); state-driven flow speed still applies via
the existing body[data-state] .blob descendant selectors.

Also gitignore the scratch _hud_shot.png debug capture.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@Shaan-alpha
Shaan-alpha merged commit 556bf31 into main Jun 20, 2026
3 checks passed
@Shaan-alpha
Shaan-alpha deleted the feature/hud-close-button-logo branch June 20, 2026 00:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant