Skip to content
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

Tray #5

Closed
Ikkevoid opened this issue Apr 18, 2017 · 11 comments
Closed

Tray #5

Ikkevoid opened this issue Apr 18, 2017 · 11 comments

Comments

@Ikkevoid
Copy link
Contributor

Could you add option to run Pulseeffects in tray?

@wwmm
Copy link
Owner

wwmm commented Apr 18, 2017

I did some research and it seams that the gtk3 api necessary for this has been deprecated http://stackoverflow.com/questions/41917903/gtk-3-statusicon-replacement. I am not against tray icons but at the same time I do not want to use a deprecated api. So for now the answer is no. But I will let this issue open for some time in case anyone comes up with a solution that adds system tray icons for desktops where they make sense without affecting PulseEffects behavior in Gnome.

@Ikkevoid
Copy link
Contributor Author

https://gist.github.com/pklaus/304963 What about this? *Sorry if it isn't useful :/ *

@wwmm
Copy link
Owner

wwmm commented Apr 22, 2017

Hi! No problems.

This example uses gtk.status_icon_new_from_stock. This is the api that was deprecated in gtk 3.14
https://developer.gnome.org/gtk3/stable/GtkStatusIcon.html:

"GtkStatusIcon has been deprecated in 3.14. You should consider using notifications or more modern platform-specific APIs instead. GLib provides the GNotification API which works well with GtkApplication."

Though I doubt that using this api would be really a problem while we are in gtk3 it has already been removed from gtk4:

https://mail.gnome.org/archives/commits-list/2016-September/msg10049.html

When the time to switch to gtk4 arrives all the code based on GtkStatusIcon would have to be removed from PulseEffects =/

@tadfisher
Copy link

Probably a better option is to turn PulseEffects into a daemon, such that a Gnome extension could be created to talk to it. It would be useful to run PulseEffects without opening the application as well.

@wwmm
Copy link
Owner

wwmm commented Apr 30, 2017

This crossed my mind some time ago. It is a possibility but it is going to require big code changes... I will give some thoughts to it but I make no promisses...

@wwmm wwmm closed this as completed Jun 4, 2017
AsavarTzeth added a commit to AsavarTzeth/pulseeffects that referenced this issue Aug 31, 2017
@Ikkevoid
Copy link
Contributor Author

@wwmm
Copy link
Owner

wwmm commented Sep 28, 2017

knotifications is for kde/qt applications and what this extension does is showing notification icons of applications that use knotifications/appindicator in gnome.

Maybe this could be done with appindicator but I don't know if I want to use this. It is hard to find examples specially about the integration with the Gtk Application class used in PulseEffects.

@AsavarTzeth
Copy link
Contributor

AsavarTzeth commented Sep 28, 2017

I would personally be against appindicator. It would complicate the Flatpak package more than I would prefer. Just take this as an example. Sure I could exclude it but then users that know PulseEffects support it will start to ask for it.

Also I have to ask what purpose this would actually serve? @Ixoos never actually mentioned why, only that you do want it.

  • If you want it to run in the background, I second @tadfisher.
  • If you just want it out the way, minimize it, or put it in a different workspace.

I am also not sure how well maintained libappindicator is or rather if it will improve much more now that Unity is discontinued. Just see the change history.

As for other desktops, KDE uses it but others, as far as my experience goes, rely on extensions or applets, and the user experience isn't always great.

@Ikkevoid
Copy link
Contributor Author

Me and few of my friends want this because we want to run it in the background. I'm using pulseeffects all the time and it would be nice to having it as a daemon.

@AsavarTzeth
Copy link
Contributor

AsavarTzeth commented Sep 28, 2017

I see, as I suspected. Then a tray icon, while perhaps a quick solution, is not itself what ultimately want.

Take FeedReader as an example. It has a service that runs in the background and updates your feeds. When you close the app the service/daemon still works in the background.

I believe this is partly related to #51 (not the only way to approach it though)

@wwmm
Copy link
Owner

wwmm commented Sep 28, 2017

FeedReader approach would work but from development point of view it adds a lot of complexity as now the graphical interface has to talk to a background service using some protocol. The amount of code I would have to write/rewrite to do that in PulseEffects is insane. And in our case the main motivation is just hiding the window from the user.

In any case @Ixoos there is something you can do that has a similar effect as having a daemon. Start PulseEffects with the option of hiding the interface https://github.com/wwmm/pulseeffects/wiki/Command-Line-Options. You just have to write a .desktop file that uses this command line option and copy it to ~/.config/autostart. Just have in mind that this is not a daemon mode. As soon as you click PulseEffects launcher icon the window will be shown and if you close it the effects will be killed as usual. For people that use the same settings for everything this is enough.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants