-
Notifications
You must be signed in to change notification settings - Fork 1.8k
feat(transparent-player): Added Linux and macOS support #4199
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
feat(transparent-player): Added Linux and macOS support #4199
Conversation
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR extends the transparent-player plugin to support Linux and macOS platforms, which was previously Windows-only. The changes introduce platform-specific material types and refactor the code into separate files for better organization.
Changes:
- Added macOS vibrancy material types (WINDOW, FULLSCREEN_UI, CONTENT, UNDER_WINDOW, UNDER_PAGE) to the MaterialType enum
- Refactored plugin code into separate menu.ts and backend.ts files with platform-specific logic
- Added Linux-specific initialization code in src/index.ts to enable transparency support with required command-line switches
- Removed Platform.Windows restriction to allow the plugin to work on all platforms
- Changed default material type from ACRYLIC to NONE for cross-platform compatibility
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| src/plugins/transparent-player/types.ts | Added macOS-specific material type enum values and reorganized the enum with comments |
| src/plugins/transparent-player/menu.ts | New file containing platform-specific menu logic that filters material types based on the operating system |
| src/plugins/transparent-player/index.ts | Refactored to extract menu and backend logic to separate files; removed Windows platform restriction and changed default config |
| src/plugins/transparent-player/backend.ts | New file containing backend logic with platform-specific window material handling for Windows (setBackgroundMaterial) and macOS (setVibrancy) |
| src/index.ts | Added Linux-specific configuration for transparent-player plugin, including required command-line switches and hardware acceleration handling |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
Does this plugin support freebsd? |
No description provided.