Closed JakobDev closed 8 months ago
This is a limitation of Electron, we use the setProgressBar method that only works on Unity desktop on linux: https://www.electronjs.org/docs/latest/api/browser-window#winsetprogressbarprogress-options
On Linux platform, only supports Unity desktop environment, you need to specify the *.desktop file name to desktopName field in package.json. By default, it will assume {app.name}.desktop.
While I guess we could try to find other ways of do that without using Electron's features, I think it's better to request this in Electron's repo so they fix that there to improve the compatibility instead.
The Electron documentation is a bit misleading. The standard was originally made for Unity, but is also supported n other Desktops such as KDE nowadays. KDE is providing exact the same API, so everything working on the (no longer existing) Unity also works on KDE. I can take a look at Electron itself, but I'm not a Electron developer.
Electron uses libunity
for that and not DBus (unless libunity wraps arround DBus interface too). I believe this is related to the warning in the wiki you linked.
While the libunity API is stable, the DBus protocol underneath is not. We strongly discourage anyone from relying on it
I have now installed libunity from the AUR. It's now working. Maybe you could add libunity to the dependencies.
(unless libunity wraps arround DBus interface too)
It does exactly that.
I believe this is related to the warning in the wiki you linked.
You can ignore that warning. This Interface was created around 10 years ago. It had never changed. There are a lot of programs who call this API directly. Unity no longe exists and this Interface is also supported by other Desktops too, so it will never change. Maybe we get some Day a more official Way as part of the xdg-desktop-portals, but the current Interface will stay. I will create a Issue at Electron to emit the DBus Signal directly.
libunity could also be included in The Flatpak, but the Flatpak has another problem: The Interface needs the desktop filename to work, but in the Flatpak the desktop file is com.heroicgameslauncher.hgl.desktop
while it's heroic.desktop
in the native packages. I think we should change it to com.heroicgameslauncher.hgl.desktop
in the native packages too.
Edit: There is already a open Issue for that, but it looks like it's ignored.
Describe the bug
The latest update added the following:
This is not working on my System (Manjaro KDE).
Add logs
Steps to reproduce
Just download a Game
Expected behavior
The download Progress in shown in the Window Icon
Screenshots
No response
Heroic Version
Latest Stable
System Information
Additional information
If I run
to call the API directly, the Progress is correctly shown in the Icon:
So this is definitely supported in KDE and the Issue is on the side of Heroic.