ferdium / ferdium-app

All your services in one place, built by the community
https://ferdium.org
Apache License 2.0
2.9k stars 176 forks source link

Bug: Wrong (generic) icon in task switcher #505

Open jasmines opened 2 years ago

jasmines commented 2 years ago

Avoid duplicates

Ferdium Version

6.0.0-nightly.103

What Operating System are you using?

Ubuntu

Operating System Version

Ubuntu 22.04 LTS

What arch are you using?

x64

Last Known Working Ferdium version

No response

Expected Behavior

In Task switcher I expect to see Ferdium icon.

Actual Behavior

In Task switcher I see generic X icon for Ferdium. Everywhere else (docks, menu, taskbar) I see the correct icon.

Steps to reproduce

With analog environment, select "Large Icons" as Task Switcher. Change window with ALT+TAB (or your configured shortcut to activate the switcher).

Debug link

No response

Screenshots

Screenshot_20220721_152815

Additional information

KDE Plasma Qt Version 5.15.3 KDE Frameworks Version 5.95.0

FERDIUM:

Version: 6.0.0-nightly.103 Server: Ferdium Server Electron: 19.0.8 Chrome: 102.0.5005.148 Node.js: 16.14.2 Platform: Linux 5.15 Arch: x64 Build date: Tue Jul 19 2022 18:44:02 GMT+0200 (Ora legale dell’Europa centrale) Git SHA: b21671e3 Git branch: nightly

Alphrag commented 2 years ago

Hi @jasmines, how did you install Ferdium on your ubuntu? Relatively to that: do you know if you already have a .desktop file for Ferdium installed? This is where the settings for the task manager/dock/etc. to use would be stored (in particular the icon: field). If you used the AppImage, you might want to create a .desktop file by hand yourself (we haven't created a way to do that automatically yet).

jasmines commented 2 years ago

Installed as snap, .desktop file is created upon installation: /var/lib/snapd/desktop/applications/ferdium_ferdium.desktop

[Desktop Entry]
X-SnapInstanceName=ferdium
Name=Ferdium
Exec=env BAMF_DESKTOP_FILE_HINT=/var/lib/snapd/desktop/applications/ferdium_ferdium.desktop /snap/bin/ferdium %U
Terminal=false
Type=Application
Icon=/snap/ferdium/89/meta/gui/icon.png
StartupWMClass=Ferdium
Comment=Ferdium is your messaging app / former heir to the throne of Austria-Hungary and combines chat & messaging services into one application. Ferdium currently supports Slack, WhatsApp, Gmail, Facebook Messenger, Telegram, Google Hangouts, GroupMe, Skype and many more. You can download Ferdium for free for Mac, Windows, and Linux. For enabling webcam access you need to connect "camera" plug to snap, and for microphone with PulseAudio - "audio-record" plug. This can be done in Snap GUI or via command: `snap connect ferdium:camera; snap connect ferdium:audio-record`.
MimeType=x-scheme-handler/ferdium;
Categories=Network;InstantMessaging;

The icon field value you read is right, and it actually works in taskbar and docks BUT NOT IN TASK SWITCHER.

Alphrag commented 2 years ago

Ok, thanks for the precision. It looks like KDE is using a different way to deal with icons for the task switcher (see this answer) and you might be able to ask it to use the icon from the desktop file. I will check if there is a way to make the app report the same icon in general during run time. If you know of another electron app that behaves appropriately, then I would be glad to know in order to see if we could replicate what they did.

jasmines commented 2 years ago

Are you suggesting something to solve? I can't find the hint in the answer you're referring to.

lgp171188 commented 2 years ago

I ran into the same issue and worked around it by creating a custom .desktop file under ~/.local/share/applications and setting the Icon value to the icon that ships in the snap, and forced Plasma to always use that .desktop file.

[Desktop Entry]
Name=Ferdium
Exec=ferdium %U
Terminal=false
Type=Application
Icon=/snap/ferdium/current/meta/gui/icon.png
StartupWMClass=Ferdium
Comment=Ferdium is your messaging app / former heir to the throne of Austria-Hungary and combines chat & messaging services into one application. Ferdium currently supports Slack, WhatsApp, Gmail, Facebook Messenger, Telegram, Google Hangouts, GroupMe, Skype and many more. You can download Ferdium for free for Mac, Windows, and Linux. For enabling webcam access you need to connect "camera" plug to snap, and for microphone with PulseAudio - "audio-record" plug. This can be done in Snap GUI or via command: `snap connect ferdium:camera; snap connect ferdium:audio-record`.
MimeType=x-scheme-handler/ferdium;
Categories=Network;InstantMessaging;