sigmaSd / Stimulator

Keep your computer awake
https://flathub.org/apps/io.github.sigmasd.stimulator
MIT License
17 stars 9 forks source link

[KDE-x11] Tray indicator + close to tray #86

Closed Victor239 closed 9 months ago

Victor239 commented 9 months ago

It would be great to be able to close the Stimulator window but leave it running in the background in the system tray. A closed issue indicated there some sort of tray support already but it's not visible on my system.

System:

meybonomme commented 9 months ago

Version 1.0 will be available very soon in Flathub with AppIndicator support.

EDIT: It's already available now.

sigmaSd commented 9 months ago

Version 1.0 is now available with indicator support, can you try updating and see if it works for you ?

Victor239 commented 9 months ago

I'm using v1.0 and don't see an indicator unfortunately.

sigmaSd commented 9 months ago

You have to go to the preference menu and chose run in background option

Also the icon only appears when you active the disable suspend button

Victor239 commented 9 months ago

Ahh I see. I wouldn't have expected the option there based on the wording of the setting, thanks for pointing it out.

Victor239 commented 9 months ago

It would be nice to have the icon available when suspend isn't activated, then just allow toggling it from the tray icon itself instead of opening the window.

meybonomme commented 9 months ago

We do not advertise AppIndicator support, because it's not natively supported by GNOME. That's why wording doesn't say anything about tray or appindicator support.

sigmaSd commented 9 months ago

It would be nice to have the icon available when suspend isn't activated, then just allow toggling it from the tray icon itself instead of opening the window.

This wasn't done for 2 reasons mainly:

meybonomme commented 9 months ago

Plus Stimulator is app, not shell extension. If you want pure and complete tray support, I think there is better options than Stimulator.

Victor239 commented 9 months ago

We do not advertise AppIndicator support, because it's not natively supported by GNOME. That's why wording doesn't say anything about tray or appindicator support.

I'm using KDE in this instance btw.

This wasn't done for 2 reasons mainly:

  • The appindicator api is very limited and I don't think we can make nice design with it
  • I prefer to have the simplest logic in the indicator, otherwise people will keep wanting to add more features to it and it would be as complex as the main app

1) Being grey or white when it's not enabled would look good, with orange being enabled like it currently is. 2) That's understandable wanting to have a low amount of logic, but I don't think it's worth hampering the UX in order to avoid getting too many feature requests.

My motivation is because I usually close all windows unless I'm actively using them. Whereas my system tray is for apps that run in the background but can be enabled/disabled as needed (e.g. VPN, backup app, Syncthing tray etc). It's great to be able to toggle their state just through their right-click menus and just leave them available in my system tray always.

With Stimulator not being able to be disabled and stay in the system tray it means that the window has to stay open whilst it's disabled, which is counter-intuitive. Or I have to remember to open the app again if I close it between uses, which I'm unlikely to remember to do.

Plus Stimulator is app, not shell extension. If you want pure and complete tray support, I think there is better options than Stimulator.

I'm not familiar with the term, from a brief Google it looks like a GNOME thing but I use KDE. If you know of a better alternative that works on my system I'm all ears though. Caffeine-ng is one that I looked into but it's not packaged for my distro so Stimulator is what I went with.

meybonomme commented 9 months ago

You can use Stimulator with KDE and with other DE's, but it's natively GTK4 GNOME app and we mainly consider with the GNOME ecosystem and UI desicions. GNOME DE doesn't support appindicator/tray icons without extension at all and like @sigmaSd sayd "The appindicator api is very limited".

We debated at whether to add tray icon support at all and in what form. It remains more of a simple add-on, but it will never become the main feature of this app. If it were a native QT KDE application, the story would be different.

My motivation is because I usually close all windows unless I'm actively using them. Whereas my system tray is for apps that run in the background but can be enabled/disabled as needed (e.g. VPN, backup app, Syncthing tray etc). It's great to be able to toggle their state just through their right-click menus and just leave them available in my system tray always.

Did you tried this applet? https://store.kde.org/p/1212005/ Not very up-to-date, but it could work. The use of KDE Plasma applets should not be related to the distro in any way.

Sounds like you need an applet/widget instead of app. If all the features of the app are controllable from the system tray, app itself is not needed anymore. It's useless. GNOME already have Caffeine extension, we don't want to duplicate it. Stimulator is basically for those who prefer to use an app instead of an extension or widget. And following the GNOME philosophy, we want to keep everything as simple as possible.

Victor239 commented 9 months ago

Ah right, wasn't aware it was built mainly for GNOME.

Did you tried this applet? https://store.kde.org/p/1212005/

That has some errors when I try to install it. I did however find caffeine-minus now though after you mentioned applets and it seems to work after some tweaks.

I still think there's a benefit in supporting system tray usage fully for most users, since this wasn't as simple to install as a Flatpak and it feels like Stimulator is very close to being a good replacement. But it's understandable if you plan to keep it as is.

sigmaSd commented 9 months ago

@Victor239 you arguments are definitely valid, and I see your use case, but lets just close this issue since its resolved.

We're going to keep the current the system for now, but we may consider a redesign if more users want this or we gather more feedback.