[Wayland-bugs] [Bug 752258] Epiphany displays incorrect name in gnome-shell app menu
gtk+ (GNOME Bugzilla)
bugzilla at gnome.org
Thu Jul 16 22:41:25 PDT 2015
https://bugzilla.gnome.org/show_bug.cgi?id=752258
--- Comment #29 from Jasper St. Pierre <jstpierre at mecheye.net> ---
(In reply to Jonas Ã…dahl from comment #24)
> That'd go against any version of "set_app_id" I've seen. The .desktop file
> of gedit is "org.gnome.gedit.desktop", gedit is a D-Bus activatable
> applicatoin. According to xdg_surface.set_app_id it should definitely not be
> "gedit".
>
> If you think xdg_surface.set_app_id is wrong and should be some "binary
> name" or similar, unrelated to .desktop file names and D-Bus names, then
> we'd need to change the spec (and probably not call it anything with "ID".
Yes. It's technically against spec. But it's basically all we have.
The issue is that we have a prgname of "gedit" and an application ID of
"org.gnome.gedit". The desktop file can be either one of "gedit.desktop" or
"org.gnome.gedit.desktop" and it will work absolutely fine under X11. The
problem is that we have no idea which is which. Some apps, like gedit, use
their proper bus name application ID as their desktop filename. Others, like
epiphany, use their prgname is their desktop filename. Both are, in their own
sense, "application IDs". GTK+ doesn't have any API for you to tell it which
one it is.
The spec was not written for the "real world", in which case matching
applications and desktop files and DBus names are a messy, unspecified business
applying new meaning to old things like WM_CLASS roles. It was written for the
new world of DBusActivatable applications, in which you have one ID, which is
org.gnome.gedit. Epiphany is not an app that does this... yet?.
Perhaps that means the spec is bad. But xdg-shell.xml isn't the place for
explaining shell-specific application matching behavior.
We have one piece of the puzzle, which is gtk_surface.set_application_id, which
is guaranteed to always be "org.gnome.gedit" in this case.
In mutter, xdg_surface.set_application_id is wired up to wm_class, which is
what would normally be filled with "gedit" under X11. So it only makes sense to
me to match it.
If you want to instead also be fine with a suggestion to add a private
gtk_surface.set_prgname method, and figure out what to do with
set_application_id later, that's fine by me.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/wayland-bugs/attachments/20150717/9a09f916/attachment-0001.html>
More information about the wayland-bugs
mailing list