fix(main): restore Cmd+Q and About menu, fix icon and fullscreen issues#55
Merged
flexiondotorg merged 8 commits intomainfrom Mar 26, 2026
Merged
fix(main): restore Cmd+Q and About menu, fix icon and fullscreen issues#55flexiondotorg merged 8 commits intomainfrom
flexiondotorg merged 8 commits intomainfrom
Conversation
Move tray event listener setup and state management from setupContentHandlers() into a dedicated function. Encapsulates 6 closure variables, 3 event listeners, and a cleanup function. No behaviour change. Signed-off-by: Martin Wimpress <code@wimpress.io>
Set application menu to an empty template on macOS instead of null, which fully suppresses the menu bar. Preserve existing behaviour on Linux and Windows. Signed-off-by: Martin Wimpress <code@wimpress.io>
Add 14 new test cases covering: - Event subscription (nowPlayingItemDidChange, playbackStateDidChange, volumeDidChange) - Pause timeout lifecycle (starts after pause, clears on cleanup, fires after 30s) - Artwork download handling (fetches when now playing changes, handles failures) - Cleanup function (removes all event listeners, clears pause timer) - Volume updates (rebuilds menu when volume changes) Signed-off-by: Martin Wimpress <code@wimpress.io>
- Create pauseTimer.ts with PauseTimer interface and createPauseTimer factory - Replace inline timer management in discord-presence with createPauseTimer - Replace inline timer management in tray with createPauseTimer - Add comprehensive test coverage for pause timer behaviour (start, cancel, restart, destroy) Improves code reusability and testability by centralizing pause timeout logic. Signed-off-by: Martin Wimpress <code@wimpress.io>
- Add hslShift [-1, 0, 1] parameter to mark image as template, enabling automatic colour adaptation to menu text (light/dark theme) - Resize SF Symbols to 18px with HiDPI representations (1x and 2x) - Update getMenuIcon to generate properly scaled multi-representation images - Update test mocks to reflect resize and toPNG method calls Signed-off-by: Martin Wimpress <code@wimpress.io>
- Add fullscreenable and fullscreen options to About window creation - Add fullscreenable and fullscreen options to splash screen creation Fixes macOS fullscreen behaviour on About and splash windows. Signed-off-by: Martin Wimpress <code@wimpress.io>
- Replace empty application menu template with minimal one - Include quit role to enable Cmd+Q shortcut - Menu bar remains effectively invisible on macOS Signed-off-by: Martin Wimpress <code@wimpress.io>
- Add productName to package.json for correct app name display - Restore minimal app menu with Cmd+Q quit and About window option on macOS - Export showAboutWindow from tray module for menu integration Signed-off-by: Martin Wimpress <code@wimpress.io>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes critical issues affecting menu functionality and window behaviour. Restores Cmd+Q quit functionality and About menu on macOS, prevents About and splash windows from entering fullscreen, and corrects SF Symbol icon rendering with proper sizing and theme adaptation.
Changes
Testing