No reason to state the obvious.
PE runs constantly on my desktop, along with other apps such as Discord, ktorrent et.
Im a bit of a neat-freak and I love to put constantly running apps in system tray.
Maybe for Christmas?
Thank you.
I realize now that this requires a "tray-service" that requires some capabilities.
But those capabilities dont need to be complex, just open and close to tray is all that is needed for this use case.
With this possibility one would be able to free up space on the task bar.
/Adam
This feature was asked a few times in the past. The problem is that GTK4 won't support tray. So when I port to GTK4 I will have to remove it. It feels like a waste of effort doing it.
The best approach would be to use a third party applet for that. There is this one https://github.com/boomshop/pulseeffectstray but I do not know how many features it has.
It wouldn't be a wasted effort if you just branched PE before porting to GTK4.
That way us that prefer a abandoned GTK3 branch with tray would be happy, and you can move on to GTK4.
No effort is wasted effort, mate!
:)
Unfortunately the tray plug in doesn't have minimize to tray capability.
Hey Wellington,
fiddling with xdotool or wmctrl for this task could become a can of worms. If you would feel like adding a command line API for this I could expose toggling window state in the tray icon.
Cheers!
Hi Markus!
If you would feel like adding a command line API for this I could expose toggling window state in the tray icon.
I think this can be done. I will take a look.
It wouldn't be a wasted effort if you just branched PE before porting to GTK4.
That way us that prefer a abandoned GTK3 branch with tray would be happy, and you can move on to GTK4.
At the end of the day it will give more headaches. Once new features are implemented in the GTK4 branch people on GTK3 will want them backported. And people that moved to GTK4 will come here asking why the tray icon was removed. I don't have time for that. It is better to add command line options that allow third party applets to do this job.
Master branch updated with a new command line option --hide-window:
wallace@wwmm ~/myfiles/code/cpp/pulseeffects/_build/src $ ./pulseeffects --help
Usage:
pulseeffects [OPTION鈥
Help Options:
-h, --help Show help options
--help-all Show all help options
--help-gapplication Show GApplication options
--help-gtk Show GTK+ Options
Application Options:
-q, --quit Quit PulseEffects. Useful when running in service mode.
-p, --presets Show available presets.
-l, --load-preset Load a preset. Example: pulseeffects -l music
-r, --reset Reset PulseEffects.
-b, --bypass Global bypass. 1 to enable, 2 to disable and 3 to get status
-w, --hide-window Hide the Window.
--display=DISPLAY X display to use
But I do not know yet when there will be a new release.
To show the window just call pulseeffects without arguments.
Does PE run with -w option currently?
Or is the option just starting point for potential enhancement?
Im asking because I cant hear any difference when Ive started PE with -w.
Forgive me if this is an obvious question, I'm fresh to github/open source/ etc.
I might have interpreted the -w as fully implemented yet.
Great, thanks!
@addeps3 -w just hides the window in a running instance of PE, has nothing to do with audio and can be used by external software (e.g. pulseeffectstray) to let the window "hide into the tray".
Great, thanks!
@addeps3 -w just hides the window in a running instance of PE, has nothing to do with audio and can be used by external software (e.g. pulseeffectstray) to let the window "hide into the tray".
./pulseeffects -w from (pulseeffects/_build/src) makes PE not appear in top-command, and I cant hear my limiter and equalizer filters. Im pretty sure its not starting.
./pulseeffects (from pulseeffects/_build/src) starts PE with all functions, and lists in top.
Is there something wrong?
Haven't build/tested it but I got it like:
pulseeffectspulseeffects -w to hide the windowpulseeffects again to make the window re-appearCurrently pulseeffects -w kills the process for me.
But I am running it locally, its not installed system-wide for me, I'll take care of it.
@addeps3 this option is meant to be used when PulseEffects is started as a service pulseeffects --gapplication-service. If you execute this command no window is shown by default. Running pulseeffects after this will show the window. And pulseeffects -w will hide it.
I am assuming that you compiled our latest source code. As I did not release it yet the binary installed by your package manager does not have this option.
If PulseEffects is not started as a service closing the window kills the process. So there is no point in using this option in this case.
@addeps3 this option is meant to be used when PulseEffects is started as a service
pulseeffects --gapplication-service. If you execute this command no window is shown by default. Runningpulseeffectsafter this will show the window. Andpulseeffects -wwill hide it.I am assuming that you compiled our latest source code. As I did not release it yet the binary installed by your package manager does not have this option.
Yes, my build directory is up to date.
Yes, my build directory is up to date.
So all that is left to do is starting as a service first. After that it should work.
Yes, my build directory is up to date.
So all that is left to do is starting as a service first. After that it should work.
Must not the terminal window remain open for pulseeffects --gapplication-service to keep running?
Must not the terminal window remain open for pulseeffects --gapplication-service to keep running?
If you start through a terminal yes. The easier way to avoid that would be to add an autostart file to the folder ~/.config/autostart. This is what the option Start Service at Login in PulseEffects menu does. But as you are running from a custom folder you can't just enable this option in the menu as the executable won't be found. You will have to create this file manually and adjust the binary path accordingly. This is the autostart file PulseEffects creates:
wallace@wwmm ~/myfiles/Programs/packages/aur/linux-git $ cat ~/.config/autostart/pulseeffects-service.desktop
[Desktop Entry]
Name=PulseEffects
Comment=PulseEffects Service
Exec=pulseeffects --gapplication-service
Icon=pulseeffects
StartupNotify=false
Terminal=false
Type=Application
I've added the feature to pulseeffectstray. See README for more information on how to toggle window visibility. This is absolutely untested since I still haven't compiled latest version of PulseEffects. Feel free to report any problems with this feature.
PE 4.8.0 has been released with the command line option to hide the window.