forked from Manuel/meeting-assistant
- Introduced MacOsDesktopControlManifest to manage desktop control configurations. - Implemented MacOsDesktopControlService to handle the lifecycle of the macOS helper process. - Created MacOsWorkflowRulesEditorWindowService for managing workflow rules through a native window. - Developed a Swift helper for macOS that integrates with AppKit and Carbon for menu-bar controls and global hotkeys. - Added support for recording lifecycle actions via HTTP endpoints, maintaining consistency with existing Windows functionality. - Enhanced user experience by allowing macOS users to start/stop recordings and access settings through a menu-bar interface. - Documented design decisions, implementation evidence, and verification tasks for the new macOS features.
1.2 KiB
1.2 KiB
MODIFIED Requirements
Requirement: Recording mode is controlled by a configurable hotkey
Meeting Assistant SHALL use normal .NET configuration to define global hotkeys that work on Windows and macOS and toggle recording/transcription mode.
Meeting Assistant SHALL preserve the configured shortcut strings across Windows and macOS, including the defaults Ctrl+Alt+M, Ctrl+Alt+L, Ctrl+Alt+Z, and Ctrl+Alt+S.
Meeting Assistant SHALL expose a configurable abort/discard hotkey for an active recording on Windows and macOS.
Scenario: macOS uses the configured Windows-equivalent shortcuts
- GIVEN the default and English profiles use
Ctrl+Alt+MandCtrl+Alt+L - AND abort and screenshot use
Ctrl+Alt+ZandCtrl+Alt+S - WHEN Meeting Assistant starts on macOS
- THEN it registers those same global shortcut combinations
- AND routes them to toggle, abort, and screenshot actions through the local service surface
Scenario: macOS recording hotkey starts recording
- GIVEN Meeting Assistant is idle on macOS
- WHEN the user presses the configured recording hotkey
- THEN Meeting Assistant starts recording/transcription mode