Skip to content

Conversation

@rupokghosh
Copy link
Member

Summary

This enables the system tray/menu bar icon to appear on macOS when Whispering starts, providing quick access to
recording controls and app actions directly from the menu bar.

The menu structure provides essential actions organized with separators: recording controls at the top, window management options, settings access, and quit. Left-clicking the tray icon shows the menu, giving users immediate access to all features without needing to open the main window.

Type of Change

  • feat: New feature
  • fix: Bug fix
  • docs: Documentation update
  • refactor: Code refactoring (no functional changes)
  • perf: Performance improvement
  • test: Test additions or changes
  • chore: Maintenance tasks
  • style: Code style changes

Related Issue

Changes Made

System Tray now finally works and lets the user do basic functionalities such as starting a recording, stopping, viewing settings

Testing

Desktop App Testing

  • Tested on macOS
  • Tested on Windows
  • Tested on Linux
  • Not applicable (web-only change)

General Testing

  • Tested with multiple API providers (if applicable)
  • Verified no API keys are exposed in logs or storage
  • Checked for console errors
  • Tested on different screen sizes (if UI change)

Checklist

  • My code follows the project's coding standards (see CONTRIBUTING.md)
  • I've used type instead of interface in TypeScript
  • I've used absolute imports where applicable
  • I've tested my changes thoroughly
  • I've added/updated tests for my changes (if applicable)
  • My changes don't break existing functionality
  • I've updated documentation (if needed)

Screenshots/Recordings

Screen.Recording.2025-11-09.at.1.04.06.PM.mov

Additional Notes

@Leftium
Copy link
Member

Leftium commented Nov 10, 2025

How does this PR work with #868?

  • There seems to be some overlap in the UX and code.

@rupokghosh
Copy link
Member Author

How does this PR work with #868?

  • There seems to be some overlap in the UX and code.

This one is more lean and just adds some basic functionalities that I thought could be useful immediately, if we can get the other one reviewed and merged, we can close this one without merging. Thoughts?

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.

2 participants