mirror of
https://github.com/jpochyla/psst.git
synced 2026-04-27 07:25:52 +03:00
[PR #667] Add support close-to-tray option #653
Labels
No labels
api
bug
build
documentation
duplicate
enhancement
good first issue
help wanted
idea
invalid
linux
lowprio
macos
pull-request
upstream
windows
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/psst#653
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/jpochyla/psst/pull/667
Author: @Cleboost
Created: 6/30/2025
Status: 🔄 Open
Base:
main← Head:tray-option📝 Commits (2)
34b4870Add Windows system tray support and close-to-tray option56c5f8bMerge branch 'main' into tray-option📊 Changes
54 files changed (+780 additions, -1063 deletions)
View changed files
📝
.github/workflows/build.yml(+3 -2)📝
Cargo.lock(+126 -219)📝
psst-core/Cargo.toml(+1 -6)📝
psst-core/build.rs(+4 -4)📝
psst-core/src/actor.rs(+1 -1)📝
psst-core/src/audio/decode.rs(+4 -4)📝
psst-core/src/audio/output/cpal.rs(+5 -5)📝
psst-core/src/cache.rs(+5 -5)📝
psst-core/src/cdn.rs(+6 -7)📝
psst-core/src/connection/mod.rs(+6 -6)📝
psst-core/src/error.rs(+5 -13)📝
psst-core/src/item_id.rs(+8 -14)📝
psst-core/src/lib.rs(+0 -1)📝
psst-core/src/oauth.rs(+10 -7)📝
psst-core/src/player/file.rs(+4 -4)📝
psst-core/src/player/item.rs(+4 -4)📝
psst-core/src/player/mod.rs(+3 -3)📝
psst-core/src/player/queue.rs(+7 -2)📝
psst-core/src/player/worker.rs(+2 -2)📝
psst-core/src/session/access_token.rs(+2 -1)...and 34 more files
📄 Description
This pull request introduces several changes to enhance functionality, improve user experience, and add support for system tray integration on Windows. The most significant updates include adding new commands for playback control, implementing a system tray feature for Windows, and updating the configuration and preferences UI to support the new "close to tray" behavior.
I avoid using the module because of compatibility issues with GTK or other related problems.
close https://github.com/jpochyla/psst/issues/294
close https://github.com/jpochyla/psst/issues/70
close https://github.com/jpochyla/psst/issues/389
Windows system tray integration:
WindowsTraystruct in a new modulewindows_tray.rsto manage system tray functionality, including displaying a tray icon, handling right-click context menus, and responding to menu actions like playback control and application quit.Delegateto manage the system tray instance and handle commands related to the tray, such asTRAY_REMOVEDandQUIT_APP_CLEAN. [1] [2] [3]Playback commands:
PLAY_PAUSE_TOGGLEandTRAY_REMOVEDincmd.rsto support toggling playback and handling tray removal events. [1] [2]playback.rsto handle thePLAY_PAUSE_TOGGLEcommand, allowing users to toggle between play and pause states.Configuration updates:
close_to_trayfield to theConfigstruct, enabling users to configure whether closing the app minimizes it to the system tray instead of quitting. [1] [2]preferences.rsto include a checkbox for toggling the "close to tray" option.Dependency updates:
winapicrate with necessary features to support Windows system tray functionality inCargo.toml.🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.