Closed Mek101 closed 11 months ago
The same thing happens for me with chrome-based apps but not firefox-based apps.
Linux Mint XFCE 4.14 Chrome 90.0.4430.72 // Firefox 87
I also have the same issue on chrome based browsers only. The windows are clubbed under the icon associated to the first opened instance. Ubuntu Mate 20.04.2 Chrome 90
As a workaround, you may avoid this « shared icon » using isolated profile for each web-app.
... isolated profile for each web-app.
@Coeur-Noir How do you do that?
As a workaround, you may avoid this « shared icon » using isolated profile for each web-app.
This only works on chromium browsers, since Firefox profiles are always isoleted
As a workaround, you may avoid this « shared icon » using isolated profile for each web-app.
This only works on chromium browsers, since Firefox profiles are always isoleted
OK, that's why I didn't see the option.
FYI, separate icon for firefox-based webapps is already fixed with PR #49
⋅ isolated profile choice is only given with chromium based web-browser hence [ Chromium ( chromium browser ] in the picture. ⋅ Firefox webapps are isolated by default.
FYI, separate icon for firefox-based webapps is already fixed with PR #49
Doesn't work on gnome. It highlights as active the youtube app for a second, then as soon as the window appears it switches to the firefox icon.
It not influenced by whatever firefox is already launched or not
According to looking glass, the youtube app has the wm class firefox
and the org.mozilla.firefox
app, like the browser
Is there any other workaround for chrome-based that doesn't involve using isolated profiles? one might have multiple google apps(gmail, spreadsheets, maps) and doesn't want to have multiple login instances fore each one of them, which could also be considered a suspicious behavior by google
I'm on Majaro and have this problem with both Firefox and ungoogled-chrome (flatpak). I got it working by installing ungoogled-chrome from AUR (aka community repo aka NOT flatpak) and checking "isolated profile"
I found a workaround for this problem. It has really annoyed me on me on Manjaro-Gnome (switched from Plasma to Gnome, in Plasma this issue did not exist).
I played around with the .deskop files in /home/.local/share/applications/
and found a really easy fix for this (at least i hope so, i don't know if there are any problems with this way of fixing, at first glance, there is only one drawback).
So here is the fix which worked for me:
create your WebApp with the WebApp-Manager
go to home/.local/share/applications
and find the matching .desktop
file
open this file with an editor
append this at the end of the line which starts with "Exec" --name=yourWebApp
so that it looks something like this:
Exec=sh -c 'XAPP_FORCE_GTKWINDOW_ICON=discord firefox .......... --name=discord'
change the parameters of the lines which start with "Icon" and "StartupWMClass" to yourWebApp
in this example it would look like this:
Icon=discord
StartupWMClass=discord
save the changes
Done!
So as i wrote earlier there is also one known downside of this workaround, the WebApp-Manager does not show the changed WebApps anymore.
So if you want to delete the changed WebApps you have to delete the .desktop files and the profile folders found in home/.local/ice/firefox
but i think this is still a good deal.
I hope this helps and i also hope this is the only downside of this, since I am far from being an expert, I can not estimate this exactly.
edit: I don't use Chromium based Browsers so this workaround was only done with Firefox. Maybe this also works for Chromium based Browsers.
Update: My method didn't work because the icon would be shared in the dock if you had multiple apps open.
I also tried @Khraut 's method which almost worked, except it had an issue with following links outside of the initial domain. For example, if creating an app for Fastmail, Reddit, FB Messenger, when someone sends a link in a message and I click it, I would expect the link to be opened in a new browser window. Instead, the webapp opens the link and now it's stuck.
I found a solution which works well for me:
@bdombro I also encountered the issue that there is no new browser windows that opens up when you are clicking on a link inside the webapp. I fixed this with going to the Firefox settings inside the webapp and unchecking the "Open links in tabs instead of new windows" option. Now the link will open up a new window, sadly this window is not like your regular browser window (it shows without address-bar) but for me this is not that big of a problem.
I also found this python script on GitHub: https://github.com/marten-de-vries/mozapp
It seems to also be able to generate webapps that does not share their icon with the browser. But i don't know how these behave on this issue.
If I add --name (same as classname) to the exec= of the .desktop file, then I get a separate entry on the taskbar in KDE with the proper icon. It is now not grouped into the firefox browser. I noticed this from checking out what the python script on GitHub: https://github.com/marten-de-vries/mozapp does as linked by Khraut above.
@bkmo same as here https://github.com/filips123/PWAsForFirefox/issues/80#issuecomment-1160839905 maybe ?
This should fix Firefox grouping all webapps in the taskbar.
All I am suggesting is adding is a new parameter "--name (same as --class )" to the exec line of the .desktop file. This could be added at app creation time from the webapp-manager. It seems --name has to be the same as --class in order to get the proper taskbar icon.
I am adding this to the Exec= of the .desktop entries ex: --name WebApp-SpeedtestnetOokla7220
Same as --class
I was able to add it easily to /usr/lib/webapp-manager/common.py
add " --name WebApp-" + codename +
after line 216 for Firefox and also after line 233 for inclusion in Librewolf flatpak.
also removing line 185 browsers.append(Browser(BROWSER_TYPE_FALKON, "Falkon", "falkon", "/usr/bin/falkon"))
will remove it from the browser dropdown list as it is non functional as a webapp browser (at least the latest version)
I have created a PR https://github.com/linuxmint/webapp-manager/pull/189/commits/19570c886499eb89656cbdf396cd1bfd7db0f779 for this. It works fine in my setup. Arch Linux, KDE Plasma 5.25, Firefox 102
Ok, ok, I was not saying you're wrong in any way ;-)
I just wonder why I don't need to add --name in my situation.
My « Exec= » lines look like :
Exec=firefox --new-window -P Deezer https://www.deezer.com/fr/ --class Deezer %u
I guess -P « calling » the name of a profile is quite the same as --name ? ? ?
In launchers, mind the Exec and StartupWMClass entries :
In profiles.ini, mind the naming of each Firefox profile, the same wording for each matters. The name of a profile must match the part after the dot in path
[Profile2]
Name=Deezer
IsRelative=1
Path=dj4ng0.Deezer
Are you saying webapp-manager currently works properly by placing each app seperately in the tray? Mine does not. It also does not use current default profiles in Firefox, therefore no profiles.ini. My solution works by simply adding the --name parameter to the Exec= of the .desktop file. Try it! Are you actually using webapp-manager or your own custom profile solution?
It also does not use current default profiles in Firefox, therefore no profiles.ini
You certainly have a profiles.ini in .mozilla/firefox but indeed browser's profiles used by web-app-manager are ( were ? ) stored into ~/.local/share/ice/firefox
Therefore the Exec path should probably mention the full path to the needed profile, something like
--profile /path/to/.local/share/ice/firefox/one_of_your_webapp
hence then
Exec=firefox --new-window --profile /path/to/.local/share/ice/firefox/YourWebApp https://www.website.com/ --class YourWebApp %u
might be enough ( I still have to understand what --new-window, --no-remote or --new-instance are supposed to change here - but in my situation --new-window is enough to have different icons for different websites, surprisingly. )
The icon is tied to a ( browser's ) profile.
I did use ice web app ( from peppermint OS ) then web-app-manager for years, but no longer today as I can't make it work on my Ubuntu 22.04 - don't know why though.
I did use ice web app ( from peppermint OS ) then web-app-manager for years, but no longer today as I can't make it work on my Ubuntu 22.04 - don't know why though.
Ubuntu 22.04 uses snap version of firefox. That's why it is not working. Here I am providing the quick fix.
Step 1. If you have created a web-app based on firefox for gitlab.com, it's profile would be located in ~/.local/share/ice/firefox
. Copy this to ~/snap/firefox/common/.mozilla/firefox
.
Step 2. Modify the .desktop file. In the Exec line you would have something like
Exec=sh -c 'XAPP_FORCE_GTKWINDOW_ICON=~/.local/share/ice/icons/GitLab.png firefox --class WebApp-GitLab3098 --profile ~/.local/share/ice/firefox/GitLab3098 --no-remote http://www.gitlab.com'
Change the path after --profile
to
Exec=sh -c 'XAPP_FORCE_GTKWINDOW_ICON=~/.local/share/ice/icons/GitLab.png firefox --class WebApp-GitLab3098 --profile ~/snap/firefox/common/.mozilla/firefox/GitLab3098 --no-remote http://www.gitlab.com'
Note: I have have changed my home directory with ~
, but in the .desktop files it should be replaced with /home/<username>
As I already said, the whole bug is due to the fact that Ubuntu has dropped the apt version of firefox and webapp-manager
does not support snap version of firefox yet.
@hsbasu thanks for caring but I'm not the one asking for help ;-) And you're right about the --profile path in case of a snap, it should be located somewhere inside /home/<user>/snap/firefox/…
I don't use Firefox as a snap in my Ubuntu 22.04, it's a manual installation from https://www.mozilla.org/en-US/firefox/all/#product-desktop-release, so here it's the expected and legacy paths inside $HOME.
Regarding WebApp Manager in Ubuntu 22.04, as stated here https://www.omgubuntu.co.uk/2022/07/install-linux-mint-apps-on-ubuntu-ppa « the Webapp Manager tool (…) did NOT work with the Firefox Snap on my system. »
And I can confirm it also does not work as expected with my « manual installation » : the WebApp opens without title-bar, even if I set Firefox to use a title-bar, making it very uncomfortable to manage its window. ( Here I suspect something related to Wayland or gtk4 and the script that modifies the Firefox interface. )
I am really sorry. I forgot that ubuntu by default uses Gnome desktop. Thanks for reminding. And I am using Cinnamon. I also have Gnome. I'll check what happens there.
Firefox webapps uses proper icon as set for them. The generated .desktop has:
Exec=sh -c 'XAPP_FORCE_GTKWINDOW_ICON=web-whatsapp firefox --class WebApp-WhatsApp6785 --profile /home/avell/.local/share/ice/firefox/WhatsApp6785 --no-remote https://web.whatsapp.com'
Google Chrome webapps are showing Google Chrome's icon. The generated .desktop uses no XAPP_FORCE_GTKWINDOW_ICON.
Editing Google Chrome's one to be like the Firefox's (with XAPP_FORCE_GTKWINDOW_ICON), kinda works but... all windows of Google Chrome will use the same icon as the 1st launched app.
Although I can't explain why it works for Firefox, I suspect it may have some relation to this this commit: https://github.com/linuxmint/xapp/commit/ccc70e5625ecab260d01be847fbfc82c4212f933
Any thoughts?
-edit-
I've found it is easier to use native Google Chrome function, right top menu > more tools > create shortcut (tick option to open in a window). The launcher will properly use the website icon and won't stack over the regular Google Chrome icon in taskbar.
The only drawback is: for websites with a PWA manifest, you can't set a custom URL (the launcher will use the one set as default in manifest, forcedly).
Joining this existing issue for the problem I have been seeing too: "Shared icon in window lists"
I have several Mint 21.x Cinnamon
instances with this issue. Are we to the point of having an official approach here, or is this not going to be addressed with a change to the GUI? Seems like all options are workarounds, and all involve manual steps which might regress if you then use the GUI again later?
Regardless of the annoyance of this issue, it is cool to see how properly organized you all are, and how long-suffering. This ticket being started in 2021 Q2 makes it seem like a good candidate for closure :) Let's get this one off the to-do list!
Is this solution viable? https://github.com/linuxmint/webapp-manager/issues/103#issuecomment-1189487432
Is there an equivalent for Chromium
browsers that can be added to the PR? Going to mess with this on a fork.
Since my last post, I tried the @bdombro suggestion: https://github.com/linuxmint/webapp-manager/issues/103#issuecomment-1030706420 ...
Nativefier
https://github.com/bdombro/nativefier-linux
I already had npm
installed, so I ran the nativefier
package install, and tried it out. Definitely solves the problem, but goes further and allows addition of systray icon for web app, single-instance protection, always on top, etc... if desired, by build flag.
Also it remembers the location of the window between sessions. Web App manager usually started all windows in the left half of the entire screen on the primary display every time, and never remembered otherwise.
Is each native executable >200MB? Well, yes... the browser is packaged with each Electron instance, per overkill usual. But at least now it works while/if Web App manager evolves. Will check back in a year or so :)
Thanks @bdombro
Oh man. So, using nativefier
is great, except for huge issue: No ad-blocker support whatsoever, with no hope of that in sight. In the case of internal systems that might be fine, but even if you are using it just for webmail for example, that is going to be riddled with ads very often. And the support for ad-blocking seems to be either dead, or up 💩 creek without a paddle.
I am experiencing something similar on Arch Linux with KDE Plasma 5.27.9 and Wayland. When the app first opens, the correct icon is shown in the taskbar, but then is collapsed into the Firefox icon. The app is also showing as Firefox in the overview window or task switcher (ALT+TAB). This does not happen under X11.
same here, Fedora 39 + Gnome 45. Web WhatsApp shows Firefox icon in task switcher (not in launcher), Chromium version shows fallback icon
Same here Fedora 38 + Gnome 44
WebApps created with Firefox all show up as Firefox and not as individual Apps. When choosing Chrome it starts as separate App but the window size gets reseted very single time the App starts.
I can confirm that just adding --name WebApp-[NAMEHERE]
actually solves the problem under Wayland.
Tested on Fedora 38 + Gnome 44 / Fedora 39 + Gnome 45
I've created a MR with a fix: https://github.com/linuxmint/webapp-manager/pull/272
@clefebvre and @saschaeggi does this fix require Wayland
to enjoy?
@digitalextremist the related MR fixes the window handling in wayland
@saschaeggi perhaps it is a bit early to close the bug then, given that it was originally reported for x ?
@tobiasrenkin I leave this decision to the maintainer. Have you tested if this also fixes your issue in X11?
Thanks for the fix @saschaeggi, it is appearing in my taskbar on KDE Plasma correctly now. However it still appears incorrectly in the Overview screen, as well as the window title bar.
Overview screen
Window titlebar
I can second this observation for KDE Plasma 5.27.9 on Wayland. Task-Manager icon displays correctly now. Window title and Overview show the default Wayland icon.
As exemplified here, the main Firefox windows and the Youtube webapp share the same "handler", which in practice means that the web app is treated as a normal Firefox window instead of a separated application.
OS Manjaro GNOME 3.38 Firefox 88 (Flatpak)
Could be related to #100